schm-poscrm-papi

(0 reviews)

schm-poscrm-papi 中文文档

基础说明

本接口以资生堂POSCRM接口为基础,作为代理接口。

本接口省去资生堂POSCRM的鉴权步骤,调用时可直接使用明文参数调用。

本接口独有鉴权信息为header中带的client_id和client_secret,并作为调用方身份标识。

每个接口有独立的调用权限,如需使用请预先向管理员申请接口权限。

本文档详细描述了第三方系统开发者接入SCHM-POSCRM所需的接口开发规范。

本接口规范包括通用规范和业务规范。通用规范描述了所有接口必须遵守的公共部分,业务规范根据具体的业务交互内容描述了各个实际业务接口所需要的详细数据内容。

1. 接口通用规范

1.1 接口地址前缀

UAT地址(测试环境): https://schm-api-test.shiseido.cn

PROD地址(生产环境): https://schm-api.shiseido.cn

1.2 接口调用方式

接口统一使用HTTPS协议请求。实际请求地址如下:

[UAT地址 or PROD地址]/schm-poscrm-papi/{version}/{INTERFACE_URL}

其中,version参数目前统一传v2,INTERFACE_URL填入下方接口说明中的接口地址

举例,会员身份验证,其测试环境请求地址即为:https://schm-api-test.shiseido.cn/schm-poscrm-papi/v2/member/verify

1.3 权限说明

访问所有接口,都须在header中设置key为client_idclient_secret的参数。不同的接口调用方使用不同的参数。您需要向管理员申请认证信息。

例如:

client_id: fa98****3452
client_secret: 108b****41f2

接口会根据client_id进行鉴别权限。会分别对接口地址以及参数中的ownerId进行鉴权。

  1. 请求地址鉴权:接口会通过clinet_id校验是否可以使用该接口。
  2. ownerId鉴权:每个接口都会传一个参数:ownerId,这个参数含义为品牌ID。接口会通过client_id校验是否可以操作这个品牌。

1.4 业务参数说明

接口目前仅支持JSON格式。调用接口时,业务参数以POST形式提交。

建议在调用接口时添加如下header设置:

Content-Type=application/json
1.5 返回结果说明

接口返回结果会以明文形式直接返回。

接口返回结果的格式为JSON格式。

目录


2. 接口说明

2.1 会员身份验证

接口地址: /member/verify
接口说明: 根据手机号/邮箱/WechatOpenId/WechatUnionId/会员卡号/天猫昵称/EC帐号验证是否CRM会员
接口名称: EC_MemberVerify
请求方式: HTTP POST 提交

2.1.1 参数说明

字段描述字段名称必填类型备注
所有者OwnerIdYvarchar(4)
所属店铺StoreIdNvarchar(10)
用户IDUserIdYvarchar(200)支持:手机号/邮箱/WechatOpenId/WechatUnionId/天猫昵称/EC帐号/SFCCID
用户ID类型UserIdTypeYvarchar(1)0:手机号
1:邮箱
3:WechatOpenId
4:WechatUnionId
5:TmallNick
6:EC帐号,10:SFCCID
密码MemberPasswordNvarchar(32)EC调用时传递密码验证密码正确性。

2.1.2 参数示例

{
    "OwnerId": "78",
    "UserId": "136XXXX1111",
    "UserIdType": "0",
    "MemberPassword": "xxxxxx"
}

2.1.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodeString空:处理成功
-1:系统错误
-2:找不到会员
-7:会员已被删除;-11:会员已冻结
-21:品牌错误;-22:密码错误;-90:该会员已天猫注册,但未完善信息
-9998:该会员未确认隐私政策。
返回消息MessageString错误消息文本。仅错误时有返回内容。
会员编号MemberNoString只要找到会员编号就返回。

2.1.4 返回结果示例

{
  "ErrorCode": "",
  "Message": "",
  "MemberNo": "M7800000128"
}

2.2 申请入会

接口地址: /member/register
接口说明: 提交必要的信息注册会员。建议在开发阶段,注册会员成功后,再调用“查询会员信息接口”获取并验证注册的信息。
接口名称: EC_MemberRegist
请求方式: HTTP POST 提交

2.2.1 参数说明

接口字段描述接口字段名称必填类型备注
所有者(品牌)OwnerIdYvarchar(4)
所属店铺StoreIdNvarchar(10)EC商城:固定为EC商城的店铺编号
其他:可以为空
注意:该店铺编号并不是接口申请表中提供 的 URL 参数中的 STOREID,而是实际的店铺编号。
会员姓名NameYvarchar(50)
会员性别SexYvarchar(1)性别 1:男;2:女;
会员生日(年月日)BirthDayYvarchar(8)YYYYMMDD
如会员注册无该项请填写:19000101
移动电话MobileYvarchar(50)
固定电话TelephoneNvarchar(50)
结婚状况MaritalStatusYvarchar(2)01:已婚
02:未婚
03:未知(默认值)
04:离异
如会员注册无该项目请填写:03
子女个数ChildrenNumberNintEFFECTIM专用
住址AddressNvarchar(255)
邮编ZipNvarchar(10)不超过10位。
EmailEmailNvarchar(200)
是否愿意邮件接收信息IsGetInfoByEmailYvarchar(1)0:否(默认值);1:是
如会员注册无该项目请填写:0
会员是否愿意通过短信 接收营销活动信息IsGetInfoBySMSNvarchar(1)0:否(默认值);1:是
备注MemoNnvarchar(200)
会员密码MemberPasswordNvarchar(32)sha1加密.
EC 商城帐号WebsiteAccountNvarchar(50)
会员注册渠道RegisteTypeYvarchar(2)请使用80以及80之后的值:
80:Campaign(H5 活动页上的注册会员)
81:小红书
82:抖音
90:线下活动
91:派样机
83:喵街
84:百货线上
85:支付宝小程序
另:
40:官网(EC 官网专用)
60:会员中心(会员中心小程序专用)
会员地址省代码ProvinceNvarchar(5)
会员地址市代码CityNvarchar(5)
对于官微公众号 OpenIdWechatOpenIdNvarchar(50)微信注册必须填写
微信用户 UnionIdWechatUnionIdNvarchar(50)小程序调用必须填写
对于官微公众号关注日期WechatAttentionDateNDateTime格式:yyyy-MM-ddTHH:mm:ss
推荐人手机号ReferrerMobileNvarchar(11)
注册来源活动标签RegisteCampaingTagNvarchar(50)用于备注某次活动的注册会员,便于在 CRM 后台查询出通过活动注册的会员。具体是否需要传值以及传值的内容咨询品牌方。
隐私条款确认状态CheckPolicyStatusNint0:会员未同意隐私授权(默认值)
3:会员同意隐私授权。
天猫昵称Nvarchar(50)仅针对天猫对接时使用,目前暂停使用。
注册日期NDateTime仅回传历史数据使用,目前暂停使用。 格式:yyyy-MM-ddTHH:mm:ss
称谓SalutationNnvarchar(100)

2.2.2 参数示例

{
    "OwnerId": "78",
    "StoreId": "80100006",
    "Name": "张三",
    "Sex": "1",
    "BirthDay": "19870625",
    "Mobile": "19827382762",
    "Telephone": "19827382762",
    "MaritalStatus": "03",
    "ChildrenNumber": 2,
    "Address": "黄河路1号",
    "Zip": "200001",
    "Email": "aaa@bbb.com",
    "RegisteType": "80",
    "IsGetInfoByEmail": "1",
    "Memo": "备注信息XXXXXXXXXXXX",
    "Password": "123456",
    "RegisteCampaingTag": "H5"
}

2.2.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodeString空:处理成功
-1:系统错误
-4:手机号码已经被注册
-19:邮件地址已经被注册
-21:品牌错误;-28:手机号码已经被注册,可直接在线上登录使用
-29:手机号码已经被注册,但需绑定才能线上使用
-47: 性别参数错误
-48: 结婚状况参数错误
返回消息MessageString错误消息文本。仅错误时有返回内容。
会员编号MemberNoString错误时返回空。

2.2.4 返回结果示例

{
  "ErrorCode": "",
  "Message": "",
  "MemberNo": "M7800000128"
}

2.3 会员绑定

接口地址: /member/bind
接口说明: 通过手机号或会员编号与公众号微信openid或UnionId进行绑定
接口名称: EC_MemberBind
请求方式: HTTP POST 提交

2.3.1 参数说明

字段描述字段名称必填类型备注
所有者OwnerIdYvarchar(4)
所属店铺StoreIdNvarchar(10)
会员姓名NameNvarchar(50)同 注册页面。增加会员验证按钮通道。该字段可以不提供或者传递空字符串。
会员生日(年月日)BirthdayNvarchar(8)格式:YYYYMMDD,该字段可以不提供或者传递空字符串。
移动电话/会员编号/会 员卡号MobileYvarchar(50)查找会员的依据
EmailEmailNvarchar(200)需要绑定的Email
会员密码PasswordNvarchar(32)需要绑定的会员密码
对于官微公众号 OpenIdWechatOpenIdNvarchar(50)需要绑定的官微公众号的OpenId,微信/小程序调用必须填写
微信用户 UnionIdWechatUnionIdNvarchar(50)需要绑定的微信UnionID微信/小程序调用必须填写
公众号关注日期WechatAttentionDateNDateTime格式:yyyy-MM-ddTHH:mm:ss
EC 商城帐号WebsiteAccountNvarchar(50)需要绑定的EC商城帐号

2.3.2 参数示例

{
    "OwnerId": "78",
    "BirthDay": "19870625",
    "Mobile": "19827382762",
    "Email": "aaa@bbb.com",
    "Password": "XXXX"
}

2.3.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodeString空:处理成功
-1:系统错误
-2:找不到会员
返回消息MessageString错误消息文本。仅错误时有返回内容。
会员编号MemberNoString错误时返回空。

2.3.4 返回结果示例

{
    "ErrorCode": "",
    "Message": "",
    "MemberNo": "M7800000128"
}

2.4 修改会员资料

接口地址: /member/update
接口说明: 修改会员资料
接口名称: EC_MemberEdit
请求方式: HTTP POST 提交

2.4.1 参数说明

字段描述字段名称必填类型备注
所有者OwnerIdYvarchar(4)
所属店铺StoreIdNvarchar(10)如果传递空则所属店不做更新。
会员编号MemberNoYvarchar(13)来自于CRM的会员编号
会员姓名NameYvarchar(50)
会员性别SexYVarchar(1)性别 1:男;2:女;
会员生日(年月日)BirthDayYvarchar(8)格式:YYYYMMDD,为空时不更新,只有原数据为空或1900年1月1日才会更新,否则不会 更新,忽略本字段传的任何值。
移动电话MobileYvarchar(50)
固定电话TelephoneNvarchar(50)不提供该接口字段则不更新,否则即使是空字符串也会更新
结婚状况MaritalStatusYvarchar(2)01:已婚
02:未婚
03:未知(默认值)
04:离异
如会员注册无该项目请填写:03
子女个数ChildrenNumberNintEFFECTIM专用
住址AddressNvarchar(255)不提供该接口字段则不更新,否则即使是空字符串也会更新
邮编ZipNvarchar(10)不提供该接口字段则不更新,否则即使是空字符串也会更新
EmailEmailNvarchar(200)为空时不更新(即无法清除EMAIL,只能修改)
是否愿意邮件接收信息IsGetInfoByEmailNVarchar(1)0: 否;1:是
为空时不更新
是否愿意短信接收信息IsGetInfoBySMSNVarchar(1)0: 否;1:是
为空时不更新
备注MemoNnvarchar(200)不提供该接口字段则不更新,否则即使是空字符串也会更新。注意:更新备注可能会导致品 牌用户填写的备注被更新
会员密码MemberPasswordNvarchar(32)sha1加密
EC 商城帐号WebsiteAccountNvarchar(50)为空时不更新
会员地址省代码ProvinceNvarchar(5)为空时不更新
会员地址市代码CityNvarchar(5)为空时不更新
称谓SalutationNnvarchar(100)

2.4.2 参数示例

{
    "OwnerId": "78",
    "StoreId": "80100006",
    "MemberNo": "M7800000128",
    "Name": "张三",
    "Sex": "1",
    "BirthDay": "19870625",
    "Mobile": "19827382762",
    "Telephone": "19827382762",
    "MaritalStatus": "03",
    "ChildrenNumber": "2",
    "Address": "黄河路1号",
    "Zip": "200001",
    "Email": "aaa@bbb.com",
    "IsGetInfoByEmail": "1",
    "Memo": "备注信息XXXXXXXXXXXX",
    "Password": "xxxx"
}

2.4.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodeString空:处理成功;-1:系统错误;-2:找不到会员;-7:会员已被删除;-8:会员已被别人修改;-21:品牌错误;-47: 性别参数错误;-48: 结婚状况参数错误
返回消息MessageString错误消息文本。仅错误时有返回内容。
会员编号MemberNoString错误时返回空。

2.4.4 返回结果示例

{
    "ErrorCode": "",
    "Message": "",
    "MemberNo": "M7800000128"
}

2.5 查询会员信息

接口地址: /member/query
接口说明: 通过会员号/手机号/邮箱/WechatOpenId/WechatUnionId/会员卡号/天猫昵称/EC 帐号查询会员信息
接口名称: EC_MemberInfoQuery
请求方式: HTTP POST 提交

2.5.1 参数说明

字段描述字段名称必填类型备注
所有者OwnerIdYvarchar(4)
所属店铺StoreIdNvarchar(10)
会员标识信息MemberNoYvarchar(200)支持:会员号/手机号/邮箱 /WechatOpenId/WechatUnionId/天猫昵称/EC帐号/SFCCID
会员标识信息 类型MemberNoTypeNvarchar(1)0:手机号
1:邮箱
3:WechatOpenId
4:WechatUnionId
5:TmallNick
6:EC帐号
7:会员编号
10:SFCCID
空:会员编号
是否需要返回 积分IsReturnPointNVarchar(1)1:需要返回积分信息(会有少量性能影响,如果不 需要积分建议不要返回)
其他:不返回积分信息。
是否需要返回 未生效积分IsReturnPendingPoin tNVarchar(1)1:需要返回未生效积分信息(会有少量性能影响, 如果不需要该信息建议不要返回)
其他:不返回未生效积分信息。
是否需要返回 会员标签信息IsReturnTagsNVarchar(1)1:返回会员标签信息
其他:不返回会员标签信息(默认不返回),如果不 需要会员标签则不建议传该参数
异常会员状态AbnormalStatusNvarchar(10)10:正常
20:确认异常
30:疑似异常

2.5.2 参数示例

{
    "OwnerId": "10",
    "StoreId": "",
    "MemberNo": "YZ008028",
    "IsReturnPoint": "1",
    "IsReturnTags": "1"
}

2.5.3 返回结果说明

描述key类型备注
返回状态码ErrorCodeString空:处理成功
-1:系统错误
-2:找不到会员
-21:品牌错误
返回消息MessageString错误消息文本。仅错误时有返回内容。
会员基本信息对象MemberInfo
所有者OwnerIdstring
所属店铺StoreIdstring
所属店铺名称StoreNamestring
会员编号MemberNostring
会员姓名MemberNamestring
会员性别Genderenum('1', '2')1::男;2:女;
会员生日(年月日)BirthdaystringYYYYMMDD
年龄AgeInt
移动电话Mobilestring
固定电话Telephonestring
会员卡号CardNostring
结婚状况MaritalStatusenum('01', '02', '03', '04')01:已婚
02:未婚
03:未知
04:离异
子女个数ChildrenNumberintEFFECTIM专用
住址Addressstring
邮编Zipstring
EmailEmailstring
是否愿意邮件接收 信息IsGetInfoByEmailenum(‘0’, ‘1’)0:否;1:是
是否愿意短信IsGetInfoBySMSenum(‘0’, ‘1’)0:否;1:是
备注Memostring
会员状态Statusenum(‘10’, ‘80’, ‘99’)10:正常
80:冻结
99:已删除
会员等级MemberTypestring
会员等级名称MemberTypeNamestring
EC 帐号WebsiteAccountstring
会员注册渠道RegisteTypestring10:微信
20:店铺
30:总部
40:EC 商城
50:天猫
60:微信小程序
70:京东
80:Campaign
81:小红书;82:抖音
90:线下活动
91:派样机
会员注册渠道名称RegisteTypeNamestring
会员地址省代码Provincestring
会员地址市代码Citystring
会员地址省名称ProvinceNamestring
会员地址市名称CityNamestring
微信 OpenIdWechatOpenIdstring
微信 UnionIdWechatUnionIdstring
会员有效积分PointInt
天猫昵称TmallNickstring
会员注册时间RegisteDateTimeDateTime会员提交注册资料成功注册到 CRM 系统的时间
格式:yyyy-MM-ddTHH:mm:ss
首次购买时间FirstSaleDateTimeDateTime即会员入会时间,该时间为营业日期
格式:yyyy-MM-ddTHH:mm:ss
所属服务 BCServiceEmployeeNostring
所属服务 BC 名称ServiceEmployeeNamestring
会员未生效积分PendingPointInt
SFCCIDOtherPlatformIdstring第三方平台用户ID
称谓Salutationnvarchar(100)
异常会员状态AbnormalStatusvarchar(10)10:正常
20:确认异常
30:疑似异常
会员标签对象集合Tags
标签编号TagIdstring
标签名称TagNamestring

2.5.4 返回结果示例

{
    "ErrorCode": "",
    "Message": "",
    "MemberInfo": {
        "OwnerId": "10",
        "StoreId": "00300023",
        "MemberNo": "YZ008028",
        "MemberName": "杨利芬",
        "Gender": "2",
        "Birthday": "19901201",
        "Mobile": "13599999999",
        "Telephone": "",
        "MaritalStatus": "03",
        "ChildrenNumber": "2",
        "Address": "",
        "Zip": "",
        "Email": "",
        "IsGetInfoByEmail": "0",
        "Memo": "",
        "Status": "10",
        "MemberType": "4",
        "RegisteType": "20",
        "Province": "001",
        "City": "001",
        "Point": "17200",
        "TmallNick": "",
        "RegisteDateTime": "2014-12-28T00:00:00",
        "FirstSaleDateTime": "2014-12-28T00:00:00"
    },
    "Tags": [{
        "TagId": "xxxxxx",
        "TagName": "xxxxxx"
    }, {
        "TagId": "xxxxxx",
        "TagName": "xxxxxx"
    }]
}

2.6 注销会员

接口地址: /member/cancelation
接口说明: 会员注销接口,只有CRM系统开启了注销功能才能成功调用。注销后,会员信息全部更改为“已注销”,手机号等信息全部更改为注销专用的无意义的数字
接口名称: CancelMember
请求方式: HTTP POST 提交

2.6.1 参数说明

字段描述字段名称必填类型备注
所有者OwnerIdYvarchar(4)
会员编号MemberNoYvarchar(10)
注销方式CancelTypeYvarchar(10)40:外部接口注销
注销备注CancelMemoNvarchar(100)

2.6.2 参数示例

{
    "OwnerId": "10",
    "MemberNo": "M1000978773",
    "CancelType": "40",
    "CancelMemo": "Test"
}

2.6.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodestring空:处理成功
-1:系统错误
-21:品牌错误
返回消息Messagestring错误消息文本。仅错误时有返回内容

2.6.4 返回结果示例

{
    "ErrorCode": "",
    "Message": ""
}

2.7 查询会员积分

接口地址: /point/query
接口说明: 根据会员号/手机号/邮箱/WechatOpenId/WechatUnionId/会员卡号/天猫昵称/EC 帐号查询会员当前可用积分和会员状态
接口名称: EC_MemberPointQuery
请求方式: HTTP POST 提交

2.7.1 参数说明

字段描述字段名称必填类型备注
所有者OwnerIdYvarchar(4)
所属店铺StoreIdNvarchar(10)
会员标识信息MemberNoYvarchar(200)支持:会员号/手机号/邮箱/WechatOpenId/WechatUnionId/天猫昵称/EC帐号
会员标识信息类型MemberNoTypeNvarchar(1)0:手机号
1:邮箱
3:WechatOpenId
4:WechatUnionId
5:TmallNick
6:EC 帐号
7:会员编号
空:会员编号

2.7.2 参数示例

{
    "OwnerId": "78",
    "MemberNo": "M7800000128"
}

2.7.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodeString空:处理成功
-1:系统错误
-2:找不到会员
-21:品牌错误
返回消息MessageString错误消息文本。仅错误时有返回内容。
会员信息对象CurrentPointInfo
所有者OwnerIdvarchar(4)错误时返回空。
会员编号MemberNovarchar(13)错误时返回空。
当前积分Pointint
会员状态Statusenum('10', '80', '99')10:正常
80:冻结
99:已删除

2.7.4 返回结果示例

{
    "ErrorCode": "",
    "Message": "",
    "CurrentPointInfo": {
        "OwnerId": "78",
        "MemberNo": "M7800000128",
        "Point": "120",
        "Status": "10"
    }
}

2.8 查询会员当期积分履历

接口地址: /point/history
接口说明: 获取会员在当前积分期间的积分履历
接口名称: EC_MemberPointHistoryQuery
请求方式: HTTP POST 提交

2.8.1 参数说明

字段描述字段名称必填类型备注
所有者OwnerIdYvarchar(4)
所属店铺StoreIdNvarchar(10)
会员编号MemberNoYvarchar(13)

2.8.2 参数示例

{
    "OwnerId": "16",
    "StoreId": "32300000",
    "MemberNo": "M1600000XX"
}

2.8.3 返回结果说明

  • Result
字段描述字段名称类型备注
返回状态码ErrorCodevarchar(6)空:处理成功
-1:系统错误
-2:找不到会员
-21:品牌错误
返回消息Messagenvarchar(255)错误消息文本。仅错误时有返回内容。
  • 会员积分账期信息: PointHisHead
字段描述字段名称类型备注
会员积分账期信息PointHisHead
所有者OwnerIdvarchar(4)错误时返回空。
会员编号MemberNovarchar(13)错误时返回空。
会员状态Statusvarchar(2)10:正常
80:冻结
99:已删除
积分期开始日期BeginDateStringYYYYMMDD
积分期结束日期EndDateStringYYYYMMDD
  • 积分变动明细: GoodsDetail
字段描述字段名称类型备注
积分变动明细集合GoodsDetailArray
交易日期和时间SaleDateTimeStringYYYYMMDDHHMMSS
店铺 IDStoreIdvarchar(10)
店铺名称StoreNamenvarchar(60)
商品编号GoodsCodevarchar(8)
商品名称GoodsNamenvarchar(100)
销售数量SaleQtyint
实际销售金额AfterSalesAmountdecimal(12,4)优惠后的金额
增加积分AddPointint购买商品所获积分
积分是否生效PointIsActiveInt当前积分是否生效 1:积分已生效;0或空:积分未生效 *天猫订单在确认收货后生效,预售交易在 全部提货完成后生效。
积分调整原因代 码AdjustReasonvarchar(2)
积分调整原因名 称AdjustReasonDescnvarchar(50)
积分活动代码ScoreActivityIdvarchar(13)
积分活动名称ActivityNamenvarchar(50)

2.8.4 返回结果示例

{
    "ErrorCode": "",
    "Message": "",
    "PointHisHead": {
        "OwnerId": "16",
        "MemberNo": "XXX",
        "Status": "10",
        "BeginDate": "20140101",
        "EndDate": "20141231"
    },
    "GoodsDetailArray": [{
        "SaleDateTime": "20150102142356",
        "StoreId": "00300091",
        "StoreName": "东方商厦有限公司(GL)",
        "GoodsCode": "11114",
        "GoodsName": "资生堂新漾美肌 精华润肤乳",
        "SaleQty": "",
        "AfterSalesAmount": "",
        "AddPoint": "300",
        "PointIsActive": "",
        "AdjustReason": "",
        "AdjustReasonDesc": "",
        "ScoreActivityId": "",
        "ActivityName": ""
    }, ""]
}

2.9 调整会员积分

接口地址: /point/update
接口说明: 对会员积分进行调整
接口名称: EC_ScoreAdjust
请求方式: HTTP POST 提交

2.9.1 参数说明

字段描述字段名称必填类型备注
所有者OwnerIdYvarchar(4)
会员编号MemberNoNvarchar(13)会员编号和公众号OpenId必须填写一个,如果两个都提供,将优先使用会员编号。
公众号 OpenIdWechatOpenIdNvarchar(50)会员编号和公众号OpenId必须填写一个,如果两个都提供,将优先使用会员编号。
要调整的积分期数PeriodTypeYVarchar(1)1:本期;2:上期
需要调整的积分AdjustPointYint04:抽奖扣减
根据实际接口场景可确定其他值,需要与用户确认。
调整原因AdjustReasonYvarchar(2)
调整说明MemoNvarchar(200)
调用请求 IdRequestIdNvarchar(20)唯一标识一次积分调整,3天内重复调用会拒绝。
商品编号ItemCodeNvarchar(8)积分调整时指定的商品编号,如果不为空,会根据品牌规则是否校验该商品编号。

2.9.2 参数示例

{
    "OwnerId": "10",
    "PeriodType": "1",
    "AdjustPoint": 4,
    "AdjustReason": "Test"
}

2.9.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodeString空:处理成功-1:系统错误-2:找不到会员
返回消息MessageString错误消息文本。仅错误时有返回内容。
会员编号MemberNoString错误时返回空。
该期剩余积分Pointint

2.9.4 返回结果示例

{
    "ErrorCode": "",
    "Message": "",
    "MemberNo": "M7800000128",
    "Point": ""
}

2.10 兑换礼品后进行积分扣除

接口地址: /point/add
接口说明: 在 EC 商城进行礼品兑换后直接调用本接口进行积分扣除。注意:本接口不是简单的积分调整扣减接口,是EC进行礼品兑换后将礼品信息和扣除的积分传递给CRM进行存储并扣减积分。兑换礼品的活动编号必须先在CRM创建。使用积分和 获取积分的交易明细不能混在同一个订单编号即小票号中。除非有特殊需求,否则不建议使用本接口,建议使用“礼品兑换接口”。
接口名称: EC_MemberPointAdd
请求方式: HTTP POST 提交

2.10.1 参数说明

字段描述字段名称必填类型备注
所有者OwnerIdYvarchar(4)
所属店铺StoreIdYvarchar(10)EC店铺编号
会员编号MemberNoYvarchar(13)来自于CRM
POS 机号PosIdYint可设固定值,CRM约定
小票号BillNoYint同一店铺同一POS机号下不重复
扣除总积分AddPointSumYint兑换礼品所需扣除的总积分(负值)
交易时间SaleDateTimeYVarchar(14)YYYYMMDDHHmmss,兑换时间
交易明细数组SalesDetailArray
商品序号LineNoYint商品在小票中出现的序号
商品编号GoodsCodeYvarchar(8)兑换礼品的商品编号
数量SaleQtyYint
扣除积分AddPointYint请填写负值:扣除的积分 × -1
应用的积分活动编号ScoreActivityIdYvarchar(20)

2.10.2 参数示例

{
    "OwnerId": "78",
    "StoreId": "21700001",
    "MemberNo": "M7800000128",
    "PosId": 1,
    "BillNo": 1123456789,
    "AddPointSum": -200,
    "SaleDateTime": "20140909144323",
    "SalesDetailArray": [{
        "LineNo": 1,
        "GoodsCode": "88888888",
        "SaleQty": 1,
        "AddPoint": -200,
        "ScoreActivityId": ""
    }]
}

2.10.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodeString空:处理成功
-1:系统错误
-2:找不到会员
-7:会员已被删除
-11:会员已冻结
-12:会员帐户信息不存在
-13:会员帐户积分不足
-21:品牌错误
-23:所输店铺不存在
-24:请传入商品编号
返回消息MessageString错误消息文本。仅错误时有返回内容。
会员编号MemberNoString错误时返回空。

2.10.4 返回结果示例

{
    "ErrorCode": "",
    "Message": "",
    "MemberNo": "M7800000128"
}

2.11 查询会员消费履历

接口地址: /sales/history
接口说明: 获取会员消费履历,仅包含购买或退货
接口名称: EC_GetMemberSalesHis
请求方式: HTTP POST 提交

2.11.1 参数说明

字段描述字段名称必填类型备注
所有者OwnerIdYvarchar(4)
会员编号MemberNoYvarchar(13)
开始日DateFromYdatetime格式:yyyy-MM-dd
结束日DateToYdatetime格式:yyyy-MM-dd

2.11.2 参数示例

{
    "OwnerId": "10",
    "MemberNo": "10",
    "DateFrom": "2020-01-01",
    "DateTo": "2022-01-01"
}

2.11.3 返回结果说明

  • Result
字段描述字段名称类型备注
返回状态码ErrorCodeString0或空:成功
其他:失败。
返回消息MessageString错误消息文本。仅错误时有返回内容。
  • 消费记录: SalesArray
字段描述字段名称类型备注
消费集合SalesArray
会员编号MemberNovarchar(13)
交易时间SaleDateTimedatetime格式:yyyy-MM-ddTHH:mm:ss
商品代码GoodsCodevarchar(10)
商品名称GoodsNamenvarchar(100)
标准销售金额SalesAmountdecimal(12,4)
销售数量SaleQtyint
小票号BillNoint
店铺编号StoreIdvarchar(10)
店铺名称StoreNamenvarchar(60)
增加积分AddPointint
销售类型SalesTypevarchar(2)S:销售
R:退货;
销售类型名SalesTypeNamevarchar(20)
积分是否生效PointIsActiveInt当前积分是否生效
1:积分已生效
0或空:积分未生效
*天猫订单在确认收货后生效,预售 交易在全部提货完成后生效。

2.11.4 返回结果示例

{
    "ErrorCode": "",
    "Message": "",
    "SalesArray": [{
        "MemberNo": "",
        "SaleDateTime": "",
        "GoodsName": "",
        "SalesAmount": "",
        "SaleQty": "",
        "BillNo": "",
        "StoreId": "",
        "StoreName": "",
        "AddPoint": "",
        "SalesType": "",
        "SalesTypeName": "",
        "PointIsActive": ""
    }]
}

2.12 查询会员等级信息

接口地址: /rank/query
接口说明: 获取会员等级信息(返回 10 天之内发生过的会员升降级信息的所有会员升降级履 历)
接口名称: EC_MemberRankChgQuery
请求方式: HTTP POST 提交

2.12.1 参数说明

字段描述字段名称必填类型备注
所有者OwnerIdYvarchar(4)

2.12.2 参数示例

{
  "OwnerId": "78"
}

2.12.3 返回结果说明

  • Result
字段描述字段名称类型备注
返回状态码ErrorCodeString空:处理成功
-1:系统错误
-21:品牌错误
-25:没有相关信息
返回消息MessageString错误消息文本。仅错误时有 返回内容。
所有者OwnerIdvarchar(4)
  • 会员等级集合:MemberRankArry
字段描述字段名称类型备注
会员等级集合MemberRankArry
会员编号MemberNovarchar(13)
会员类型MemberTypevarchar(2)
上一种会员类型PrevMemberTypevarchar(2)
开始时间,含时分秒BeginDateTimeStringYYYYMMDDHHMMSS
结束时间,含时分秒EndDateTimeStringYYYYMMDDHHMMSS
状态Statusvarchar(1)1:有效(当前类型); 0:失效(已经升级或降级)

2.12.4 返回结果示例

{
    "ErrorCode": "",
    "Message": "",
    "OwnerId": "78",
    "MemberRankArry": [{
        "MemberNo": "M7800000128",
        "MemberType": "02",
        "PrevMemberType": "02",
        "BeginDateTime": "20141201000000",
        "EndDateTime": ">20151130000000",
        "Status": "1"
    }]
}

2.13 天猫会员绑定/解绑

接口地址: /tmall/bind
接口说明: 通过手机号或会员编号与淘宝昵称进行绑定或解绑
接口名称: TM_MemberBind
请求方式: HTTP POST 提交

2.13.1 参数说明

字段描述字段名称必填类型备注
卖家昵称seller_nameNString
加密后的手机号码mix_mobileNString加密手机号与明文手机号至少必填一个
明文手机号mobileNString仅仅部分商家使用加密手机号与明文手机号至少必填一个
不加密的淘宝昵称77ember_nickYString
绑定类型typeYString1:绑定; 2:解绑
混淆的淘宝昵称mix_nickNString

2.13.2 参数示例

{
    "seller_name": "anessa 安热沙官方旗舰店",
    "mobile": "1730xxxx397",
    "type": "1",
    "member_nick": "quexxxxqin"
}

2.13.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodeString空:处理成功-1:系统错误-2:找不到会员
返回消息MessageString错误消息文本。仅错误时有返回内容。
会员编号MemberNoString错误时返回空。

2.13.4 返回结果示例

{
    "ErrorCode": "",
    "Message": "",
    "MemberNo": "M7800000128"
}

2.14 接收天猫订单

接口地址: /tmall/order
接口说明: 接收天猫订单数据
接口名称: PUSH_ORDERS
请求方式: HTTP POST 提交

2.14.1 参数说明

CRM 接口字段名称淘宝接口字段名称必填类型备注
tidtidYString (Long)交易编号 (父订单的交易编号)
shippingTypeshipping_typeString创建交易时的物流方式(交易完成前,物流方式有可能改变,但系统里的这个字段一直不变)。可选值:
free:卖家包邮
post:平邮
express:快递
ems:EMS,
virtual:虚拟发货
25:次日必达
26:预约配送
SnapshotsnapshotString交易快照详细信息
snapshotUrlsnapshot_urlString订单快照 URL
statusstatusYString交易状态。可选值:
RADE_NO_CREATE_PAY:没有创建支付宝交易
WAIT_BUYER_PAY:等待买家付款
SELLER_CONSIGNED_PART:卖家部分发货
WAIT_SELLER_SEND_GOODS:等待卖家发货,即:买家已付款
WAIT_BUYER_CONFIRM_GOODS:等待买家确认收货,即卖家已发货
TRADE_BUYER_SIGNED:买家已签收,货到付款专用
TRADE_FINISHED:交易成功
TRADE_CLOSED:付款以后用户退款成功,交易自动关闭
TRADE_CLOSED_BY_TAOBAO:付款以前,卖家或买家主动关闭交易
PAY_PENDING:国际信用卡支付付款确认中
WAIT_PRE_AUTH_CONFIRM:0元购 合约中
当状态为WAIT_BUYER_CONFIRM_GOODS时,CRM开始进行销售交易导入处理。如果TP直接送订单给 CRM,请保持天猫订单原始状态。
stepPaidFeestep_paid_feeString分阶段付款的已付金额(万人团订单已付金额)
stepTradeStatusstep_trade_statusString分阶段付款的订单状态(例如万人团订单等),目前有三返回状态:
FRONT_NOPAID_FINAL_NOPAID:定金未付尾款未付
FRONT_PAID_FINAL_NOPAID:定金已 付尾款未付
FRONT_PAID_FINAL_PAID:定金和尾款都付
timeoutActionTimetimeout_action_ti meDate订单超时到期时间。格式:yyyy/MM/dd HH:mm:ss
titletitleString交易标题,以店铺名作为此标题的值。注:member.trades.get 接口返回的 Trade中的title 是商品名称
totalFeetotal_feeYString商品金额(商品价格乘以数量的总金额)。精确到2位小数,单位:元。如:200.07,表示:200元7分
paymentpaymentYstring实付金额。精确到2位小数,单位:元。如:200.07,表示:200元7分
tradeFromtrade_fromString交易内部来源。
WAP:手机
HITAO:嗨淘
TOP:TOP平台
TAOBAO:普通淘宝
JHS:聚划算
一笔订单可能同 时有以上多个标记,则以逗号分隔
tradeMemotrade_memoString交易备注。
tradeSourcetrade_sourceString交易外部来源:
ownshop:商家官网
typetypeString交易类型列表,同时查询多种交易类型可用逗号分隔。默认同时查询guarantee_trade,auto_delivery,ec,cod的4种交易类型的据,可选值:
fixed:一口价
auction:拍卖
guarantee_trade:一口价、拍卖
auto_delivery:自动发货
independent_simple_trade:旺店入门版交易
independent_shop_trade:旺店标准版 交易
ec:直冲
cod:货到付款
fenxiao:分销
game_equipment:游戏装备
shopex_trade:ShopEX交易
netcn_trade:万网交易
external_trade:统一外部交易
o2o_offlinetrade:O2O交易
step:万人团
nopaid:无付款订单
pre_auth_type:预授权0元购机交易
yfxFeeyfx_feeString订单的运费险,单位为元
yfxIdyfx_idString运费险支付号
yfxTypeyfx_typeString运费险类型
zeroPurchasezero_purchaseBoolean在返回的 trade 对象上专门增加一个字段zero_purchase来区分,这个为true的就是0元购机预授权交易
adjustFeeadjust_feestring卖家手工调整金额,精确到2位小数,单位:元。如:200.07,表示:200元7分。来源于订单价格修改,如果有多笔子订单的时候,这个为0,单笔的话则跟[order].adjust_fee 一样
alipayId80ember_idLong买家的支付宝id号,在UIC中有记录,买家支付宝的唯一标示,不因为买家更换Email账号而改变。
alipayNo80ember_noString支付宝交易号,如:2009112081173831
alipayPoint80ember_pointLong付款时使用的支付宝积分的额度,单位分,比如返回1,则为1分钱
alipayUrl80ember_urlString创建交易接口成功后,返回的支付url
alipayWarnMsg80emberwarn msgString淘宝下单成功了,但由于某种错误支付宝订单没有创建时返回的信息。Taobao.trade.add接口专用
areaIdarea_idString区域 id,代表订单下单的区位码,区位码是通过省市区转换而来,通过区位码能精确到区内的划分,比如310012是杭州市西湖区华星路
arriveCutTimearrive_cut_timeString物流到货时效截单时间,格式HH:mm
arriveIntervalarrive_intervalYLong物流到货时效,单位天,不确定则填写0
asyncModifiedasync_modifiedDate同步到卖家库的时间,taobao.trades.sold.incrementv.get接口返回此字段
availableConfirmFeeavailable_confirm _feeString交易中剩余的确认收货金额(这个金额会随着子订单 确认收货而不断减少,交易成功后会变为零)。精确到2位小数;单位:元。如:200.07,表示:200元7分
buyerAlipayNobuyer_alipay_noString买家支付宝账号
buyerAreabuyer_areaString买家下单的地区
buyerCodFeebuyer_cod_feeString买家货到付款服务费。精确到2位小数;单位:元。如:12.07,表示:12元7分
buyerEmailbuyer_emailString买家邮件地址
buyerFlagbuyer_flagLong买家备注旗帜(与淘宝网上订单的买家备注旗帜对应,只有买家才能查看该字段)红、黄、绿、蓝、紫 分别对应 1、2、3、4、5
buyerMemobuyer_memoString买家备注(与淘宝网上订单的买家备注对应,只有买 家才能查看该字段)
buyerMessagebuyer_messageString买家留言
buyerNickbuyer_nickYString买家昵称
buyerObtainPointFe ebuyer_obtain_poi nt_feeLong买家获得积分,返点的积分。格式:100;单位:个。返点的积分要交易成功之后才能获得。
buyerRatebuyer_rateBoolean买家是否已评价。可选值:true(已评价),false(未评价)。如买家只评价未打分,此字段仍返回false
canRatecan_rateBoolean买家可以通过此字段查询是否当前交易可以评论,can_rate=true可以评价,false则不能评价。
codFeecod_feeString买家货到付款服务费。精确到2位小数;单位:元。 如:12.07,表示:12 元7分
rxAuditStatusrx_audit_statusString处方药未审核状态
codStatuscod_statusString货到付款物流状态。NEW_CREATED:初始状态
ACCEPTED_BY_COMPANY:接单成功
REJECTED_BY_COMPANY:接单失败
RECIEVE_TIMEOUT:接单超时
TAKEN_IN_SUCCESS:揽收成功
TAKEN_IN_FAILED:揽收失败
TAKEN_TIMEOUT:揽收超时
SIGN_IN:签收成功
REJECTED_BY_OTHER_SIDE:签收失败
WAITING_TO_BE_SENT:订单等待发送给物流公司
CANCELED:用户取消物流订单
commissionFeecommission_feeString交易佣金。精确到2位小数;单位:元。如:200.07,表 示:200元7分
consignIntervalconsign_intervalLong物流发货时效,单位小时
consignTimeconsign_timeN/YDate卖家发货时间。格式:yyyy/MM/dd HH:mm:ss
TP OMS推送订单(非天猫订单原始接口)时:主订单状态为TRADE_CLOSED(付款以后用户退款成 功,交易自动关闭)或WAIT_BUYER_CONFIRM_GOODS(等待买家确认收货, 即:卖家已发货)时,填写最后一笔子订单发货时间, 否则为空(如果没有任何子订单发过货也传空)。
CreatedcreatedYDate交易创建时间。格式:yyyy/MM/dd HH:mm:ss
creditCardFeecredit_card_feeString使用信用卡支付金额数
discountFeediscount_feeYString可以使用trade.promotion_details查询系统优惠系统优惠金额(如打折,VIP,满就送等),精确到2位小数,单位:元。如:200.07,表示:200元7分
endTimeend_timeN/YDate交易结束时间。交易成功时间(更新交易状态为成功的同时更新)/最后一笔子订单确认收货时间或者交易关闭时间。格式:yyyy/MM/dd HH:mm:ss,未结束时保留空。
eticketExteticket_extString电子凭证的垂直信息
expressAgencyFeeexpress_agency_f eeString快递代收款。精确到2位小数;单位:元。如:212.07,表示:212元7分
hasBuyerMessagehas_buyer_messa geBoolean判断订单是否有买家留言,有买家留言返回true,否则返回false
hasPostFeehas_post_feeBoolean是否包含邮费。与available_confirm_fee同时使用。可选值:true(包含),false(不包含)
hasYfxhas_yfxBoolean订单中是否包含运费险订单,如果包含运费险订单返 回true,不包含运费险订单,返回false
iidiidString商品字符串编号(注意:iid近期即将废弃,请用num_iid参数)
invoiceNameinvoice_nameString发票抬头
invoiceTypeinvoice_typeString发票类型
is3Dis_3DBoolean是否 3D 交易
isBrandSaleis_brand_saleBoolean表示是否是品牌特卖(常规特卖,不包括特卖惠和特 实惠)订单,如果是返回 true,如果不是返回 false。 当此字段与 is_force_wlb均为true时,订单强制物流宝发货。
isDaixiaois_daixiaoBoolean表示订单交易是否含有对应的代销采购单。如果该订单中存在一个对应的代销采购单,那么该值为 true;反之,该值为false。
isForceWlbis_force_wlbBoolean订单是否强制使用物流宝发货。当此字段与 is_brand_sale 均为true时,订单强制物流宝发货。此字段为false时,该订单根据流转规则设置可以使用物流宝或者常规方式发货
isLgtypeis_lgtypeBoolean是否保障速递,如果为true,则为保障速递订单,使用线下联系发货接口发货,如果未 false,则该订单非保障速递,根据卖家设置的订单流转规则可使用物流 宝或者常规物流发货。
isPartConsignis_part_consignBoolean是否是多次发货的订单如果卖家对订单进行多次发 货,则为true否则为false
isWtis_wtBoolean表示订单交易是否网厅订单。 如果该订单是网厅订单,那么该值为true;反之,该值为 false。
lgAginglg_agingString次日达订单送达时间
lgAgingTypelg_aging_typeString次日达,三日达等送达类型
markDescmark_descString订单出现异常问题的时候,给予用户的描述,没有异常的时候,此值为空
modifiedmodifiedYDate交易修改时间(用户对订单的任何修改都会更新此字段)。格式:yyyy/MM/dd HH:mm:ss
NumnumYLong商品购买数量。取值范围:大于零的整数,对于一个 trade对应多个order的时候(一笔主订单,对应多笔子订单),num=0,num是一个跟商品关联的属性,一笔订单对应多比子订单的时候,主订单上的num无意义。
numIidnum_iidLong商品数字ID
nutFeaturenut_featureString卡易售垂直表信息,去除下单ip之后的结果
o2oo2oString导购宝=crm
o2oDeliveryo2o_deliveryString导购宝提货方式,inshop:店内提货,online:线上发货
o2oGuideIdo2o_guide_idString导购员id
o2oGuideNameo2o_guide_nameString导购员名称
o2oOutTradeIdo2o_out_trade_idString外部订单号
o2oShopIdo2o_shop_idString导购员门店id
o2oShopNameo2o_shop_nameString导购门店名称
realPointFeereal_point_feeLong买家实际使用积分(扣除部分退款使用的积分),交易完成后生成(交易成功或关闭),交易未完成时该字段值为 0。格式:100;单位:个
receivedPaymentreceived_paymen tYString卖家实际收到的支付宝打款金额(由于子订单可以部 分确认收货,这个金额会随着子订单的确认收货而不 断增加,交易成功后等于买家实付款减去退款金额)。精确到2位小数;单位:元。如:200.07,表示:200元7分
receiverAddressreceiver_addressYString收货人的详细地址
receiverCityreceiver_cityYString收货人的所在城市注:因为国家对于城市和地区的划分的有:省直辖市和省直辖县级行政区(区级别的)划分的,淘宝这边根据这个差异保存在不同字段里面比如:广东广州: 广州属于一个直辖市是放在的receiver_city的字段里面;而河南济源:济源属于省直辖县级行政区划分,是区级别的,放在了receiver_district里面建议:程序依赖于城市字段做物流等判断的操作,最好加一个判断逻辑:如果返回值里面只有receiver_district参数,该参数作为城市收货人的详细地址
receiverDistrictreceiver_districtYString收货人的所在地区
receiverMobilereceiver_mobileYString收货人的手机号码
receiverNamereceiver_nameYString收货人的姓名
receiverPhonereceiver_phoneYString收货人的电话号码
receiverStatereceiver_stateYString收货人的所在省份
receiverZipreceiver_zipString收货人的邮编
sellerAlipayNoseller_alipay_noString卖家支付宝账号
sellerCanRateseller_can_rateBoolean卖家是否可以对订单进行评价
sellerCodFeeseller_cod_feeString卖家货到付款服务费。精确到2位小数;单位:元。如:12.07,表示:12元7分。卖家不承担服务费的订单:未发货的订单获取服务费为0,发货后就能获取到正确值。
sellerEmailseller_emailString卖家邮件地址
sellerFlagseller_flagLong卖家备注旗帜(与淘宝网上订单的卖家备注旗帜对应,只有卖家才能查看该字段)红、黄、绿、蓝、紫 分别对应 1、2、3、4、5
sellerMemoseller_memoString卖家备注(与淘宝网上订单的卖家备注对应,只有卖 家才能查看该字段)
sellerMobileseller_mobileString卖家手机
sellerNameseller_nameString卖家姓名
sellerNickseller_nickString卖家昵称
sellerPhoneseller_phoneString卖家电话
sellerRateseller_rateBoolean卖家是否已评价。可选值:true(已评价),false(未评价)
sendTimesend_timeString订单将在此时间前发出,主要用于预售订单
pccAfpcc_afLong天猫点券卡实付款金额,单位分
pointFeepoint_feeLong买家使用积分,下单时生成,且一直不变。格式:100; 单位:个
postFeepost_feeYString邮费。精确到2位小数;单位:元。如:200.07,表示:200元7分
payTimepay_timeYDate付款时间。格式:yyyy/MM/dd HH:mm:ss。订单的付款时间即为物流订单的创建时间。
OrdersOrdersOrder[]Trade子对象,Order对象列表。
adjustFeeadjust_feeYString手工调整金额.格式为:1.01;单位:元;精确到小数点后两位.
bindOidbind_oidLong捆绑的子订单号,表示该子订单要和捆绑的子订单一起发货,用于卖家子订单捆绑发货
buyerNickbuyer_nickYString买家昵称
buyerRatebuyer_rateBoolean买家是否已评价。可选值:true(已评价),false(未评 价)
cidcidLong交易商品对应的类目ID
consignTimeconsign_timeN/YString子订单发货时间,当卖家对订单进行了多次发货,子订单的发货时间和主订单的发货时间可能不一样了,那么就需要以子订单的时间为准。(没有进行多次发货的订单,主订单的发货时间和子订单的发货时间都 一样)对于TP OMS传送订单:按实际情况传送,有发货则传,没有发货传空。
discountFeediscount_feeYString子订单级订单优惠金额。精确到2位小数;单位:元。如:200.07,表示:200元7分
divideOrderFeedivide_order_feeYString分摊之后的实付金额
endTimeend_timeN/YDate子订单的交易结束时间说明:子订单有单独的结束时 间,与主订单的结束时间可能有所不同,在有退款发起的时候或者是主订单分阶段付款的时候,子订单的结束时间会早于主订单的结束时间,所以开放这个字段便于订单结束状态的判断子订单结束或关闭时填写,否则为空。
IidiidString商品的字符串编号(注意:iid 近期即将废弃,请用num_iid参数)
invoiceNoinvoice_noString子订单所在包裹的运单号
isDaixiaois_daixiaoBoolean表示订单交易是否含有对应的代销采购单。如果该订单中存在一个对应的代销采购单,那么该值为true;反之,该值为false。
isOversoldis_oversoldString是否超卖
isServiceOrderis_service_orderBoolean是否是服务订单,是返回true,否返回false。
isWwwis_wwwBoolean子订单是否是www订单
itemMealIditem_meal_idLong套餐ID
itemMealNameitem_meal_nameString套餐的值。如:M8原装电池:便携支架:M8专用座充:莫凡保护袋
logisticsCompanylogistics_compan yString子订单发货的快递公司名称
modifiedmodifiedYDate订单修改时间,目前只有taobao.trade.ordersku.update会返回此字段。
NumnumYLong购买数量。取值范围:大于零的整数
numIidnum_iidLong商品数字ID
oidoidYLong子订单编号
orderFromorder_fromString子订单来源,如jhs(聚划算)、taobao(淘宝)、wap(无 线)
outerIidouter_iidYString商家外部编码(可与商家外部系统对接)。外部商家自 己定义的商品Item的id,可以通过taobao.items.custom.get获取商品的Item的信息即:SCH的产品编码或条形码。
outerSkuIdouter_sku_idYString外部网店自己定义的Sku编号
partMjzDiscountpart_mjz_discoun tYString优惠分摊
paymentPaymentYString子订单实付金额。精确到2位小数,单位:元。如:200.07,表示:200元7分。对于多子订单的交易,计算公式如下:payment = price * num + adjust_fee – discount_fee ;单子订单交易,payment 与主订单的payment一致,对于退款成功的子订单,由于主订单的优惠分摊金额,会造成该字段可能不为 0.00 元。建议使用退款前的实付金额减去退款单中的实际退款金额计算。
picPathpic_pathString商品图片的绝对路径
pricepriceYString商品价格。精确到2位小数;单位:元。如:200.07,表示:200元7分
refundIdrefund_idLong最近退款ID
refundStatusrefund_statusYString退款状态。可选值:
WAIT_SELLER_AGREE:买家已经申请退款,等待卖家同意
WAIT_BUYER_RETURN_GOODS:卖家已经同意退款,等待买家退货
WAIT_SELLER_CONFIRM_GOODS:买家已经退货,等待卖家确认收货
SELLER_REFUSE_BUYER:卖家拒绝退款
CLOSED:退款关闭
SUCCESS:退款成功
子订单退款状态为以下两种情形时,CRM自动产生退货交易:1. SUCCESS(退款成功)2. NO_REFUND并且payment=0
sellerNickseller_nickString卖家昵称
sellerRateseller_rateBoolean卖家是否已评价。可选值:true(已评价),false(未评价)
sellerTypeseller_typeString卖家类型,可选值为:B(商城商家),C(普通卖家)
shippingTypeshipping_typeString子订单的运送方式(卖家对订单进行多次发货之后,一个主订单下的子订单的运送方式可能不同,用order.shipping_type来区分子订单的运送方式)
skuIdsku_idString商品的最小库存单位Sku的id。可以通过taobao.item.sku.get获取详细的Sku信息
skuPropertiesNamesku_properties_n ameStringSKU的值。如:机身颜色:黑色;手机套餐:官方标配
snapshotsnapshotString订单快照详细信息
snapshotUrlsnapshot_urlString订单快照 URL
statusstatusYString订单状态(请关注此状态,如果为 TRADE_CLOSED_BY_TAOBAO 状态,则不要对此订单 进行发货,切记啊!)。可选值:
TRADE_NO_CREATE_PAY:没有创建支付宝交易
WAIT_BUYER_PAY:等待买家付款
WAIT_SELLER_SEND_GOODS:等待卖家发货,即:买 家已付款
WAIT_BUYER_CONFIRM_GOODS:等待买家确认 收货,即:卖家已发货
TRADE_BUYER_SIGNED:买家已签收,货到付款专 用
TRADE_FINISHED:交易成功
TRADE_CLOSED:付款以后用户退款成功,交易自 动关闭
TRADE_CLOSED_BY_TAOBAO:付款以前,卖家或 买家主动关闭交易
PAY_PENDING:国际信用卡支付付款确认中)
storeCodestore_codeString发货的仓库编码
ticketExpdateKeyticket_expdate_k eyString门票有效期的key
ticketOuterIdticket_outer_idString对应门票有效期的外部id
timeoutActionTimetimeout_action_ti meDate订单超时到期时间。格式:yyyy/MM/dd HH:mm:ss
titletitleYString商品标题
totalFeetotal_feeString应付金额(商品价格 * 商品数量 + 手工调整金额 – 子订单级订单优惠金额)。精确到2位小数;单位:元。如:200.07,表示:200元7分
promotionDetailspromotion_detailsPromotionDetail[]Trade下的子对象,促销信息列表。
discountFeediscount_feeString优惠金额(免运费、限时打折时为空),单位:元
giftItemIdgift_item_idString赠品的宝贝id
giftItemNamegift_item_nameString满就送商品时,所送商品的名称
giftItemNumgift_item_numString满就送礼物的礼物数量
ididLong交易的主订单或子订单号
promotionDescpromotion_descString优惠活动的描述
promotionIdpromotion_idString优惠 id,(由营销工具id、优惠活动 id 和优惠详情id组成,结构为:营销工具id-优惠活动id_优惠详情id,如 mjs-123024_211143)
promotionNamepromotion_nameString优惠信息的名称
serviceOrdersservice_ordersServiceOrder[]Trade对象下的子对象,服务子订单列表。
buyerNickbuyer_nickString卖家昵称
itemOiditem_oidLong服务所属的交易订单号。如果服务为一年包换,则item_oid这笔订单享受改服务的保护
numnumLong购买数量,取值范围为大于0的整数
oidoidLong虚拟服务子订单订单号
paymentpaymentString子订单实付金额。精确到2位小数,单位:元。 如:200.07,表示:200元7分。
picPathpic_pathString服务图片地址
pricepriceString服务价格,精确到小数点后两位:单位:元
refundIdrefund_idLong最近退款的id
sellerNickseller_nickString卖家昵称
serviceDetailUrlservice_detail_urlString服务详情的URL地址
serviceIdservice_idLong服务数字id
titletitleString商品名称
totalFeetotal_feeString服务子订单总费用
serviceTagsservice_tagsLogisticsTag[]Trade对象下的子对象,物流标签列表。
orderIdorder_idString主订单或子订单的订单号
logisticServiceTagListlogistic_service_tag_listLogisticServiceTag[]serviceTag 下的子对象,某一订单下的服务标签列表。
serviceTagService_tagString物流服务下的标签属性,多个标签之间有“;“分隔
serviceTypeService_typeString消费者选快递请直接判断service_tag是否包含companyCode。而不要判断service_type

2.14.2 参数示例

[{
    "buyerNick": "安 xxxxXXXXX",
    "isPartConsign": false,
    "isDaixiao": false,
    "eticketExt": "",
    "receivedPayment": "376.00",
    "type": "fixed",
    "receiverCity": "内江市",
    "buyerFlag": 0,
    "nutFeature": "",
    "canRate": false,
    "receiverPhone": "",
    "creditCardFee": "375.75",
    "hasYfx": false,
    "price": "596.00",
    "serviceOrders": [],
    "payment": "376.00",
    "sellerRate": false,
    "hasPostFee": true,
    "adjustFee": "0.00",
    "pointFee": 0,
    "receiverZip": "516500",
    "is3D": false,
    "isBrandSale": false,
    "o2o": "",
    "stepTradeStatus": "FRONT_NOPAID_FINAL_NOPAID",
    "sendTime": "",
    "yfxFee": "",
    "receiverState": "四川省",
    "orders": [{
        "bindOid": 0,
        "ticketExpdateKey": "",
        "discountFee": "180.00",
        "buyerNick": "",
        "iid": "",
        "numIid": 564754520430,
        "buyerRate": false,
        "isDaixiao": false,
        "Num": 1,
        "shippingType": "express",
        "refundStatus": "WAIT_BUYER_RETURN_GOODS",
        "oid": 406361923684924655,
        "title": "ANESSA/安热沙王俊 xxxxxxx 防晒霜 60ml*2 户外军训",
        "itemMealId": 0,
        "isServiceOrder": false,
        "consignTime": "2019-04-11 18:26:23",
        "outerSkuId": "1033xxxx1900",
        "price": "596.00",
        "logisticsCompany": "芝麻开门",
        "outerIid": "1033xxxx900",
        "modified": "2019-04-11 18:26:23",
        "divideOrderFee": "376.00",
        "payment": "376.00",
        "sellerRate": false,
        "invoiceNo": "611062xxxxx25005",
        "skuPropertiesName": "化妆品净含量:120ml",
        "adjustFee": "0.00",
        "skuId": "37389xxxx898",
        "sellerNick": "",
        "itemMealName": "",
        "ticketOuterId": "",
        "timeoutActionTime": "2019/04/11 18:26:23",
        "isWww": false,
        "picPath": "https://img.alicdn.com/bao/uploaded/i4/2582702075/O1CN01DJ9DxxxxxxxxxxxxxxxeFP_!!0-item_pic.jpg",
        "totalFee": "416.00",
        "snapshotUrl": "o:406361923xxxxxxxxxx655_1",
        "partMjzDiscount": "40.00",
        "orderFrom": "WAP,JHS,WAP",
        "endTime": "2019-04-21 18:26:33",
        "sellerType": "B",
        "isOversold": false,
        "refundId": 0,
        "snapshot": "",
        "cid": 50011982,
        "status": "TRADE_FINISHED",
        "storeCode": ""
    }],
    "o2oGuideId": "",
    "snapshot": "",
    "buyerMemo": "",
    "realPointFee": 0,
    "status": "TRADE_FINISHED",
    "arriveInterval": 0,
    "iid": "",
    "yfxType": "",
    "sellerName": "上海 xx 贸易发展有限公司",
    "shippingType": "express",
    "buyerArea": "移动",
    "pccAf": 0,
    "sellerAlipayNo": "***ssa@ilarge.cn",
    "alipayWarnMsg": "",
    "alipayNo": "2019041122001xxxxxxxx027955266",
    "sellerFlag": 0,
    "markDesc": "",
    "receiverDistrict": "隆昌市",
    "rxAuditStatus": "",
    "stepPaidFee": "",
    "o2oDelivery": "",
    "yfxId": "",
    "sellerNick": "anessa 安热沙官方旗舰店",
    "serviceTags": [],
    "tradeMemo": "",
    "postFee": "0.00",
    "receiverMobile": "159xxxx5625",
    "buyerMessage": "",
    "areaId": "",
    "buyerObtainPointFee": 188,
    "expressAgencyFee": "0.00",
    "endTime": "2019/04/21 18:26:33",
    "discountFee": "40.00",
    "o2oOutTradeId": "",
    "payTime": "2019-04-11 14:55:51",
    "buyerEmail": "176xxxxx2@qq.com",
    "numIid": 564754520430,
    "buyerRate": false,
    "Num": 1,
    "tid": 406361923600000010101010,
    "consignTime": "2019/04/11 18:26:23",
    "sellerCodFee": "0.00",
    "isWt": false,
    "invoiceType": "",
    "modified": "2019/04/21 18:26:33",
    "tradeSource": "",
    "o2oShopName": "",
    "consignInterval": 0,
    "isLgtype": false,
    "Created": "2019/04/11 14:55:47",
    "sellerPhone": "021-58xxx550",
    "sellerEmail": "xxxxxx@ilarge.cn",
    "picPath": "https://img.alicdn.com/bao/uploaded/i4/2582702075/xxxxxxxxxxxxxxxxxxxxFP_!!0item_pic.jpg",
    "receiverAddress": "古湖街道跃进街 xxxxxxxxxxxx",
    "codStatus": "NEW_CREATED",
    "availableConfirmFee": "0.00",
    "sellerMemo": "",
    "invoiceName": "",
    "buyerAlipayNo": "***229422@qq.com",
    "alipayUrl": "",
    "title": "ANESSA 安热沙官方旗舰店",
    "zeroPurchase": false,
    "arriveCutTime": "",
    "codFee": "0.00",
    "asyncModified": "",
    "promotionDetails": [{
        "giftItemId": "",
        "promotionName": "聚划算",
        "discountFee": "180.00",
        "giftItemNum": "",
        "id": 406361923684924655,
        "promotionDesc": "聚划算:省 180.00 元",
        "giftItemName": "",
        "promotionId": "Tmall$saleJhs-3153345006_64404704774"
    }, {
        "giftItemId": "",
        "promotionName": "防晒品类购物券",
        "discountFee": "30.00",
        "giftItemNum": "",
        "id": 406361923684924655,
        "promotionDesc": "防晒品类购物券:省 30.00 元",
        "giftItemName": "",
        "promotionId": "coupon2category-8102904414_63456072279-944937124984"
    }, {
        "giftItemId": "",
        "promotionName": "直播优惠券",
        "discountFee": "10.00",
        "giftItemNum": "",
        "id": 406361923684924655,
        "promotionDesc": "直播优惠券:省 10.00 元",
        "giftItemName": "",
        "promotionId": "shopbonus-8174320787_64496096024-944978725031"
    }],
    "isForceWlb": false,
    "commissionFee": "24.06",
    "lgAgingType": "",
    "receiverName": "胡 XX",
    "lgAging": "",
    "timeoutActionTime": "1997/12/04 00:00:01",
    "alipayPoint": 0,
    "o2oGuideName": "",
    "sellerMobile": "139xxxx2723",
    "buyerCodFee": "0.00",
    "hasBuyerMessage": false,
    "tradeFrom": "WAP,JHS,WAP",
    "totalFee": "596.00",
    "o2oShopId": "",
    "snapshotUrl": "o:406361923xxxxx24655_1",
    "sellerCanRate": false,
    "alipayId": 0,
    "promotion": ""
}]

2.14.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodevarchar(6)空:处理成功
-1:系统错误
-21:品牌错误
返回消息Messagenvarchar(255)错误消息文本。仅错误时有返回内容。

2.14.4 返回结果示例

{
    "ErrorCode": "",
    "Message": ""
}

2.15 查询会员购买里程信息(NARS)

接口地址: /mileage/info接口说明: 查询会员购买里程账户信息,仅限查询本期帐户信息。本接口仅限 NARS 品牌使用接口名称: EC_GetMemberMileageAccount请求方式: HTTP POST 提交

2.15.1 参数说明

字段描述字段名称必填类型备注
所有者OwnerIdYvarchar(4)
会员编号MemberNoYvarchar(13)

2.15.2 参数示例

{
    "OwnerId": "10",
    "MemberNo": "YZ008028"
}

2.15.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodevarchar(6)空或 0:处理成功-1:系统错误-21:品牌错误
返回消息Messagenvarchar(255)错误消息文本。仅错误时有返回内容。
会员里程账户集合MemberMileageAccountData
所有者OwnerIdY
会员编号MemberNoY
品类编码ExchangeRuleClassIDY
购买数量TotalSaleQty
退货扣减数量TotalRefundQty
已兑换扣减数量TotalExchangedDeductQty
失效数量TotalExpiredQty
剩余可兑礼的有 效数量TotalValidQty

2.15.4 返回结果示例

{
    "ErrorCode": "",
    "Message": "",
    "MemberMileageAccountData": [{
        "OwnerId": "10",
        "MemberNo": "YZ008028",
        "ExchangeRuleClassID": "C1",
        "TotalSaleQty": "6",
        "TotalRefundQty": "0",
        "TotalExchangedDeductQty": "5",
        "TotalExpiredQty": "0",
        "TotalValidQty": "1"
    }, {
        "OwnerId": "10",
        "MemberNo": "YZ008028",
        "ExchangeRuleClassID": "C2",
        "TotalSaleQty": "5",
        "TotalRefundQty": "0",
        "TotalExchangedDeductQty": "4",
        "TotalExpiredQty": "0",
        "TotalValidQty": "1"
    }, {
        "OwnerId": "10",
        "MemberNo": "YZ008028",
        "ExchangeRuleClassID": "C3",
        "TotalSaleQty": "1",
        "TotalRefundQty": "0",
        "TotalExchangedDeductQty": "0",
        "TotalExpiredQty": "0",
        "TotalValidQty": "1"
    }]
}

2.16 查询会员可兑礼情况(NARS)

接口地址: /mileage/query接口说明: 根据已选择的预约礼品及数量,返回剩余和兑换规则可预约的礼品数量。如果仅仅是查询会员当前各兑礼规则最新的可兑礼情况,请不要传递参数 “PresentReserveApplyDetail”节点信息。接口名称: EC_GetMemberCanExchangeAccount请求方式: HTTP POST 提交

2.16.1 参数说明

  • 头部信息: PresentReserveApply
字段描述字段名称必填类型备注
所有者OwnerIdYvarchar(4)
会员编号MemberNoYvarchar(13)
活动编号ActivityIdNvarchar(13)如果传递了预约产品信息则必填。
  • 模拟礼品预约申请集合:PresentReserveApplyDetail
字段描述字段名称必填类型备注
兑礼规则类型编号ExchangeRuleTypeIdYvarchar(10)
礼品编号PresentIdYvarchar(10)
预约数量ReserveNumYint

2.16.2 参数示例

{
    "PresentReserveApply": {
        "OwnerId": "10",
        "MemberNo": "YZ008029",
        "ActivityId": "100841-0010"
    },
    "PresentReserveApplyDetail": [{
        "PresentId": "10055",
        "ReserveNum": 1,
        "ExchangeRuleTypeId": "10"
    }, {
        "PresentId": "10055",
        "ReserveNum": 1,
        "ExchangeRuleTypeId": "10"
    }]
}

2.16.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodevarchar(6)空或 0:处理成功-1:系统错误-21:品牌错误
返回消息Messagenvarchar(255)错误消息文本。仅错误时有返回内容。
  • 可兑换礼品账户集合:MemberCanExchangeResultList
字段描述字段名称类型备注
兑礼规则类型编号ExchangeRuleTypeIdvarchar(10)
可兑换数量CanExchangeQtyInt

2.16.4 返回结果示例

{
    "ErrorCode": "",
    "Message": "",
    "MemberCanExchangeResultList": [{
        "ExchangeRuleTypeId": "10",
        "CanExchangeQty": "0"
    }, {
        "ExchangeRuleTypeId": "20",
        "CanExchangeQty": "0"
    }, {
        "ExchangeRuleTypeId": "30",
        "CanExchangeQty": "0"
    }, {
        "ExchangeRuleTypeId": "60",
        "CanExchangeQty": "1"
    }]
}

2.16.4 兑礼规则定义

10:脸部同品类满3件
20:眼部同品类满3件
30:唇部同品类满3件
40:面颊同品类满3件
50:指甲同品类满3件
60:跨品类满3件
70:全品类各满1件

2.17 答谢活动礼品预约 (NARS)

接口地址: /mileage/reserve接口说明: 答谢活动礼品预约申请处理接口名称: EC_NewPresentReserveApply请求方式: HTTP POST 提交

2.17.1 参数说明

字段描述字段名称必填类型备注
所有者编号OwnerIdYVarchar(4)
会员编号MemberNoYVarchar(15)
活动编号ActivityIdYVarchar(13)
  • 礼品预约申请集合:PresentReserveApplyDetail
字段描述字段名称必填类型备注
礼品编号PresentIdYVarchar(10)
预约数量QtyYInt
兑礼规则编号ExchangeRuleTypeIdYVarchar(8)

2.17.2 参数示例

{
    "PresentReserveApply": {
        "OwnerId": "10",
        "MemberNo": "M1000854113",
        "ActivityId": "100841-0002"
    },
    "PresentReserveApplyDetail": [{
        "PresentId": "10000C",
        "Qty": 2,
        "ExchangeRuleTypeId": "30"
    }, {
        "PresentId": "10000D",
        "Qty": 2,
        "ExchangeRuleTypeId": "40"
    }]
}

2.17.3 返回结果说明

字段描述字段名称类型备注
错误代码ErrorCodeString
错误消息MessageString
礼品预约结果集合ReserveApplyList
预约编号ReserveIdString
礼品编号PresentIdString
礼品名称PresentNameString
预约数量QtyInt
兑换开始日期ExchangeBeginDateDateTime只精确到日期,时分秒请忽略格式:yyyy-MM-ddTHH:mm:ss
兑换截止日期ExchangeEndDateDateTime只精确到日期,时分秒请忽略格式:yyyy-MM-ddTHH:mm:ss
兑礼规则编号ExchangeRuleTypeIdString

2.17.4 返回结果示例

{
    "ErrorCode": "",
    "Message": "",
    "ReserveApplyList": [{
        "ReserveId": "",
        "PresentId": "",
        "PresentName": "",
        "Qty": "",
        "ExchangeRuleTypeId": "",
        "ExchangeBeginDate": "",
        "ExchangeEndDate": ""
    }, {
        "ReserveId": "",
        "PresentId": "",
        "PresentName": "",
        "Qty": "",
        "ExchangeRuleTypeId": "",
        "ExchangeBeginDate": "",
        "ExchangeEndDate": ""
    }]
}

2.18 答谢活动礼品兑换领取 (NARS)

接口地址: /mileage/exchnange接口说明: 答谢活动礼品预约成功后到店兑换领取时,调用本接口进行兑换领取处理接口名称: EC_NewPresentExchange请求方式: HTTP POST 提交

2.18.1 参数说明

字段描述字段名称必填类型备注
所有者OwnerIdYvarchar(4)
礼品在线兑换集合PresentExchangeItems
兑换码/预约编号ReserveIdYvarchar(20)

2.18.2 参数示例

{
    "OwnerId": "10",
    "PresentExchangeItems": [{
        "ReserveId": "8702001076263"
    }, {
        "ReserveId": "8702001076264"
    }]
}

2.18.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodevarchar(6)空或0:处理成功
-1:系统错误
-21:品牌错误
返回消息Messagenvarchar(255)错误消息文本。仅错误时有返回内容。

2.18.4 返回结果示例

{
    "ErrorCode": "",
    "Message": ""
}

2.19 更新会员隐私政策确认状态

接口地址: /policy/update接口说明: 如果会员未确认过隐私政策,调用本接口更新为已确认,如果同时上传隐私政策确认签名文件则会将隐私政策确认状态更新为已上传确认签名文件接口名称: UpdatePolicyStatus请求方式: HTTP POST 提交

2.19.1 参数说明

字段描述字段名称必填类型备注
所有者OwnerIdYvarchar(4)
会员编号MemberNoYvarchar(50)CRM 会员编号
签名照片文件格式/类型FileExtensionNvarchar(10)文件扩展名,不带“.”
签名照片文件内容FileContentNtext签名照片文件二进制转换为 BASE64,请压缩到 1M 以内
是否确认过隐私策略IsConsentedYint1:已确认。
其他:未确认。
(调用接口必须传1,否则返回错误)

2.19.2 参数示例

{
    "OwnerId": "10",
    "MemberNo": "XXX",
    "FileExtension": "JPG",
    "FileContent": "XXXXXXX",
    "IsConsented": 1
}

2.19.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodeString空:处理成功
-1:系统错误或 IsConsented 值错误。
-21:品牌错误
返回消息MessageString错误消息文本。仅错误时有返回内容。
会员编号MemberNoString如果成功,则返回对应的会员编号

2.19.4 返回结果示例

{
    "ErrorCode": "",
    "Message": "",
  "MemberNo": ""
}

2.20 第三方平台ID(如SFCCID)绑定

接口地址: /platform/bind接口说明: 将第三方平台的用户 ID 与会员编号进行绑定接口名称: OtherPlatfrom_MemberBind请求方式: HTTP POST 提交

2.20.1 参数说明

字段描述字段名称必填类型备注
所有者OwnerIdYvarchar(4)
会员编号MemberNoYvarchar(13)
第三方平台名称OtherPlatfromTypeYvarchar(10)SFCC:SFCC 的用户 ID。
ALIPAY_UERID:支付宝用户 ID。
第三方平台用户 IDOtherPlatfromIdYvarchar(30)

2.20.2 参数示例

{
    "OwnerId": "10",
    "MemberNo": "XXXXXXXX000001",
    "OtherPlatfromType": "SFCC",
    "OtherPlatfromId": "XXXXXXXXXXXXXXXXX001"
}

2.20.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodeString空:处理成功;-1:错误
返回消息MessageString错误消息文本。仅错误时有返回内容。

2.20.4 返回结果示例

{
    "ErrorCode": "",
    "Message": ""
}

2.21 更新会员所属店铺及所属BC信息

接口地址: /bcandstore/update接口说明: 通过调用本接口来更新会员所属店铺和所属 BC 信息接口名称: UpdateMemberBCAndStore请求方式: HTTP POST 提交

2.21.1 参数说明

字段描述字段名称必填类型备注
所有者OwnerIdYvarchar(4)
会员编号MemberNoYvarchar(13)
所属店铺StoreIdNvarchar(13)非潜在会员,不允许更新为空
如果不更新所属店铺,请传递原所属店铺。
所属 BCServiceEmployeeNoNvarchar(13)如为空,不会更新成空,保持不变。

2.21.2 参数示例

{
    "OwnerId": "10",
    "MemberNo": "M1000450701",
    "StoreId": "32310000",
    "ServiceEmployeeNo": "00007674"
}

2.21.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodeString空:处理成功
非空:失败
返回消息MessageString错误消息文本。仅错误时有返回内容。

2.21.4 返回结果示例

{
    "ErrorCode": "",
    "Message": ""
}

2.22 更新会员标签

接口地址: /tag/update接口说明: 通过调用本接口来更新会员标签接口名称: EditMemberTag请求方式: HTTP POST 提交

2.22.1 参数说明

字段描述字段名称必填类型备注
所有者OwnerIdYstring
标签 IdTagIdYstring
操作类型ActionYstringAdd:追加成员;
Delete:删除成员;
Clear:全部清空,无需传递会员信息
会员编号列表MemberListNListAdd 和 Delete 时必传,Clear 时不用传

2.22.2 参数示例

{
    "OwnerId": "10",
    "TagId": "50001",
    "Action": "Add",
    "MemberList": ["0011000300008", "M1000450701"]
}

2.22.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodeString空:处理成功 非空:失败
返回消息MessageString错误消息文本。仅错误时有返回内容。

2.22.4 返回结果示例

{
    "ErrorCode": "",
    "Message": ""
}

2.23 查询会员礼品及券

接口地址: /gifts/detail接口说明: 查询会员礼品及券信息接口名称: EC_GetMemberGifts接口方式: HTTP POST 提交

2.23.1 参数说明

字段描述字段名称必填类型备注
所有者OwnerIdYvarchar(4)
会员编号MemberNovarchar(13)MemberNo 和 Id 字段必须提供一个。
活动类型PATypevarchar(4)10:试用品活动(查询礼品信 息)
20:积分兑换活动(查询答谢 品信息)
30:优惠券活动(查询券信 息)
如果为空,则返回 10 和 20 数据
开始日期BeginTimedatetime申请时间起始,当没有提供 Id 字段时必须提供,请只精确到日期,不要传时分秒 格式:yyyy-MM-dd
结束日期EndTimedatetime申请时间截止,当没有提供 Id 字段时必须提供,请只精确到日期,不要传时分秒 格式:yyyy-MM-dd
状态PAStatusvarchar(2)10:礼品或券申请成功
20:礼品已领取或券已核销
30:已过期
传递空则返回所有状态的数据。
申请编号/预约编号/券码编号Idvarchar(20)MemberNo 和 Id 字段必须 提供一个。
领取礼品店铺TakeStoreIdvarchar(10)仅针对活动类型 10 和 20 有 效。

2.23.2 参数示例

{
    "OwnerId": "100010",
    "MemberNo": "",
    "PAType": "",
    "BeginTime": "2020-01-01",
    "EndTime": "2022-01-01",
    "PAStatus": ""
}

2.23.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodeString空:处理成功
-1:状态输入错误
返回消息MessageString错误消息文本。仅错误时有返回内容。
  • 礼品兑换信息集合:HistoryApplyArray
字段描述字段名称类型备注
礼品兑换信息集合:HistoryApplyArray
礼品兑换信息对象:HistoryApply
所有者OwnerIDvarchar(4)
类型PATypevarchar(2)10:领取试用礼品;
20:答谢活动兑换的礼品;
30:券
申请编号ApplyIdvarchar(30)类型 10:【申请礼品编号(领取码)】
类型 20:【预约礼品编号(领取码)】
类型 30:【发行券码时间】
申请时间ApplyDateDateTime类型 10:【申请礼品时间】
类型 20:【预约礼品时间】
类型 30:【发行券码时间】
格式:yyyy-MM-ddTHH:mm:ss
会员编号MemberNovarchar(13)
会员姓名MemberNameVarchar(50)
手机号MobileVarchar(20)已进行掩码处理。
活动编号PAIDvarchar(20)类型 10:【领取试用活动编号】
类型 20:【答谢活动编号】
类型 30:【发行券的活动编号(不限于领取试用活动、答谢 活动和优惠券活动)】
活动名称PANameVarchar(50)
预约方式名称ReserveMethodVarchar(20)
礼品编号GoodsCodevarchar(8)类型 10:【礼品编号】
类型 20:【礼品编号】
类型 30:【券编号(不是券码)】
礼品名称GoodsNamenvarchar(100)类型 10:【礼品名称】
类型 20:【礼品名称】
类型 30:【券名称】
礼品名称(英文)GoodsName_ENnvarchar(150)类型 10 和 20 有效。
兑换规则编码ExchangeRuleTypeIdvarchar(10)仅活动类型 20 有效,仅针对购买里程兑换礼品有效,目前仅 NARS 品牌有效。
兑换规则名称ExchangeRuleTypeNamevarchar(50)仅活动类型 20 有效,仅针对购买里程兑换礼品有效,目前仅 NARS 品牌有效。
礼品数量Qtyint类型 10 和 20 有效。
兑换积分ExchangeScoreint类型 20 有效。
礼品或券的原始状态GoodsStatusvarchar(2)1) 类型 10:值定义如下:20:申请成功;30:已领取;85:已过期;
2) 类型 20:值定义如下:20:预约成功;30:已兑换; 85:已过期
3) 类型 30:值定义如下: 10:未使用; 15:已预约;20:已使用;70:已冻结; 90:已过期
礼品领取有效期开始ExchangeBeginDatedatetime类型 10 和 20 有效。精确到日期,时分秒无效,请忽略时分秒。 格式:yyyy-MM-ddTHH:mm:ss
礼品领取有效期结束ExchangeEndDatedatetime类型 10 和 20 有效。精确到日期,时分秒无效,请忽略时分秒。 格式:yyyy-MM-ddTHH:mm:ss
实际领取礼品日期ExchangeDatedatetime类型 10 和 20 有效。 格式:yyyy-MM-ddTHH:mm:ss
领取店铺编号ExchangeStoreIdvarchar(10)类型 10 和 20 有效。
领取店铺名称ExchangeStoreNamevarchar(50)类型 10 和 20 有效。
券的核销状态TicketStatusvarchar(2)10:未核销;20:已核销;30:已失效
券序列号TicketSerialNovarchar(20)类型 30 有效。
券类型TicketTypevarchar(2)类型 30 有效:【10:定额券;20:打折券;30:服务券;40:礼品券】
券使用有效期TicketBegYmdDateTime类型 30 有效。精确到日期,时分秒无效,请忽略时分 秒。 格式:yyyy-MM-ddTHH:mm:ss
券使用有效期TicketEndYmdDateTime类型 30 有效。精确到日期,时分秒无效,请忽略时分 秒。 格式:yyyy-MM-ddTHH:mm:ss
券核销时间SaleDateTimedatetime类型 30 有效。 格式:yyyy-MM-ddTHH:mm:ss
是否配送到家IsExpressBooleanTrue:配送到家
False:非配送到家
只有 IsExpress=true 时,才会有以下信息
快递单号ExpressNovarchar(20)
快递状态代码ExpressStatusCodevarchar(2)
快递公司代码ExpressCompanyCodevarchar(4)

2.23.4 返回结果示例

{
    "ErrorCode": "",
    "Message": "",
    "HistoryApplyArray": [{
        "ApplyDate": "",
        "GoodsCode": "",
        "OwnerID": "",
        "ApplyId": "",
        "MemberNo": "",
        "PAID": "",
        "PAType": "",
        "Qty": "",
        "ExchangeScore": "",
        "TicketSerialNo": "",
        "GoodsStatus": "",
        "TicketStatus": "",
        "TicketType": "",
        "GOODSNAME": "",
        "GOODSNAME_EN": "",
        "TicketBegYmd": "",
        "TicketEndYmd": "",
        "ExchangeStatus": "",
        "ExchangeDate": "",
        "ExchangeStoreId": "",
        "ExchangeStoreName": "",
        "ExchangeBeginDate": "",
        "ExchangeEndDate": "",
        "SaleDateTime": "",
        "IsExpress": "",
        "ExpressNo": "",
        "ExpressStatusCode": ""
    }]
}

2.24 查询促销活动编号

接口地址: /activity/query接口说明: 获取促销活动编号列表(第二天开始的所有活动)接口名称: EC_ScoreActivityQuery接口方式: HTTP POST 提交

2.24.1 参数说明

字段描述字段名称必填类型备注
所有者OwnerIdYvarchar(4)

2.24.2 参数示例

{
  "OwnerId": ""
}

2.24.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodeString空:处理成功
-1:系统错误
-2:找不到会员
-21:品牌错误
返回消息MessageString错误消息文本。仅错误时有返回内容。
所有者OwnerIdString
活动计数ActivityCountint0:为没有活动,大于0为有活动。
  • 活动明细: ActivityArray
字段描述字段名称类型备注
活动编号ActivityIdvarchar(13)
活动名称ActivityNamenvarchar(50)促销活动/积分活动
活动区分ActivityDistinctionvarchar(2)00:促销活动
积分活动:
10:积分倍率活动;
20:增加积分活动;
30:推荐人增加积分活动
开始日期BeginDateTimevarchar(8)YYYYMMDD
结束日期EndDateTimevarchar(8)YYYYMMDD
状态Statusvarchar(2)10:未申请;
20:待审核;
30:已审核;
99:删除 只输出已审核的数据
  • 活动明细: ScoreValueArray
字段描述字段名称类型备注
会员等级MemberTypevarchar(2)会员等级
积分率或增加 积分ScoreValuedecimal(12,4)1. 当是积分倍率活动时(活动区分=“10”),存储倍率,如 1.5 倍。倍率是指基于基准积分率基础上的倍数。实际的积分率 = 基准积分率 * 积分倍率
2. 当是增加积分活动时(活动区分=“20”),存储增加的积分值;

2.24.4 返回结果示例

{
    "ErrorCode": "",
    "Message": "",
    "OwnerId": "",
    "ActivityCount": "2",
    "ActivityArray": [{
        "ActivityId": "100452-015",
        "ActivityName": "双11活动",
        "ActivityDistinction": "10",
        "BeginDateTime": "20141111",
        "EndDateTime": "20141111",
        "Status": "30",
        "ScoreValueArray": [{
            "MemberType": "1",
            "ScoreValue": "1.5"
        }, {
            "MemberType": "2",
            "ScoreValue": "2.0"
        }]
    }]
}

2.25 批量添加活动对象

接口地址: /activity/batchadd接口说明: 通过调用本接口可以对指定的活动对象批量添加活动成员接口名称: AddMemberToActivity接口方式: HTTP POST 提交

2.25.1 参数说明

字段描述字段名称必填类型备注
所有者OwnerIdYvarchar(4)
活动对象编号DMRecordIdYvarchar(20)
  • 活动明细: MemberMstArray
字段描述字段名称必填类型备注
会员编号MemberNoYvarchar(13)

2.25.2 参数示例

{
    "OwnerId": "10",
    "DMRecordId": "38",
    "MemberMstArray": [{
        "MemberNo": "M1000450701"
    }, {
        "MemberNo": "M1000450702"
    }]
}

2.25.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodeString空:处理成功
非空:失败
返回消息MessageString错误消息文本。仅错误时有返回内容

2.25.4 返回结果示例

{
    "ErrorCode": "",
    "Message": ""
}

2.26 核销会员礼品申请或积分兑换预约

接口地址: /present/reserve接口说明: 核销会员的领取试用申请或积分兑换预约申请记录。核销后,领取试用申请状态为已领取,积分兑换预约状态为已兑换接口名称: PresentAndSampleTake接口方式: HTTP POST 提交

2.26.1 参数说明

字段描述字段名称必填类型备注
所有者OwnerIdYvarchar(4)
会员编号MemberNoYvarchar(13)
申请编号ApplyIdYvarchar(20)
需要核销的申请类型PATypeYvarchar(2)10: 领取试用申请
20 积分兑换预约申请

2.26.2 参数示例

{
    "OwnerId": "78",
    "MemberNo": "XXX",
    "ApplyId": "XXXXXXXXXXXXXXXXXX",
    "PAType": "10"
}

2.26.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodeString空:处理成功
非空:失败
返回消息MessageString错误消息文本。仅错误时有返回内容。

2.26.4 返回结果示例

{
    "ErrorCode": "",
    "Message": ""
}

2.27 预约答谢活动礼品

接口地址: /present/exchange接口说明: 答谢活动做礼品预约申请接口名称: EC_PresentExchange接口方式: HTTP POST 提交

2.27.1 参数说明

字段描述字段名称必填类型备注
所有者OwnerIdYvarchar(4)
活动编号ActiveNoYvarchar(13)
会员编号MemberNoYvarchar(13)
领取店铺编号StoreNvarchar(13)如果传递了领取店铺,则领取店铺为该参数值;否则为会员所属店
商品集合GoodsArray兑换礼品 数组;注意,该节点需要有一个属性:count,表示礼品明细的行数,参见参数示例。
商品对象Good
商品编号GoodCodeYvarchar(50)
预约数量QtyYint
配送到家OrderConsignee如果活动支持【配送到家】则可以填写配送信息
收件人姓名Namevarchar(20)
收件人手机Mobilevarchar(15)
收件人电话Telephonevarchar(20)
Area_Statevarchar(20)
Area_Cityvarchar(20)
Area_Districtvarchar(20)
详细地址Addrvarchar(200)

2.27.2 参数示例

{
    "ActiveNo": "",
    "MemberNo": "",
    "GoodsArray": [{
        "GoodCode": "A001",
        "Qty": 1
    }, {
        "GoodCode": "A002",
        "Qty": 1
    }],
    "OwnerId": "",
    "Store": "",
    "OrderConsignee": {
        "Name": "",
        "Mobile": "",
        "Telephone": "",
        "Area_State": "",
        "Area_City": "",
        "Area_District": "",
        "Addr": ""
    }
}

2.27.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodeString空:处理成功
-1:系统错误
-14:礼品兑换预约失败
-2:找不到会员
-11:会员已冻结
-12:会员帐户信息不存在
-17:礼品明细库存信息不存在
-18:礼品库存不足
-13:会员帐户积分不足
返回消息MessageString错误消息文本。仅错误时有返回内容。
会员编号MemberNovarchar(13)错误时返回空。
对应期的剩余可 用积分值Scoreint
预约编号ReserveIdvarchar(30)
预约信息集合ReserveDetails
预约信息ReserveDetail
预约编号ReserveIdvarchar(30)
礼品编号GoodsCodevarchar(10)
预约数量QtyInt
券集合Tickets当兑换的产品为券产品时才有本节点
券对象Ticket当兑换的产品为券产品时才有本节点
券产品编号GoodCodeString
该券产品发行的 券码Ecodestring

2.27.4 返回结果示例

{
    "ErrorCode": "",
    "Message": "",
    "MemberNo": "",
    "Score": "",
    "ReserveId": "",
    "ReserveDetails": [{
        "ReserveId": "",
        "GoodsCode": "",
        "Qty": ""
    }, {
        "ReserveId": "",
        "GoodsCode": "",
        "Qty": ""
    }],
    "Tickets": [{
        "GoodCode": "",
        "Ecode": ""
    }, {
        "GoodCode": "",
        "Ecode": ""
    }]
}

2.28 申请领取试用礼品

接口地址: /sample/apply接口说明: 会员进行领取试用活动的礼品进行申请接口名称: EC_SampleApply接口方式: HTTP POST 提交

2.28.1 参数说明

字段描述字段名称必填类型备注
所有者OwnerIdYvarchar(4)
活动编号ActiveNoYvarchar(13)
会员编号MemberNoYvarchar(13)
申请店铺编号ApplyStoreYvarchar(10)EC 调用传 EC 店号,其他调用传递 CRM 分配给调用方的 SYSCODE(不是“SYSCODE”字符串)
领取店铺编号StoreNvarchar(10)1.对于扣减总部库存的活动请保持空;
2.限定会员所属店领取礼品的活动自动会设置为会员所属店铺,请保持空值调用;
3.以上情况之外,可以指定领取店铺,如果不指定,则自动会设置为会员所属店铺。
  • 商品信息集合:GoodsArray
字段描述字段名称必填类型备注
商品编号GoodCodeYvarchar(8)
申请数量QtyYint

2.28.2 参数示例

{
    "OwnerId": "",
    "Store": "",
    "ApplyStore": "",
    "ActiveNo": "",
    "MemberNo": "",
    "GoodsArray": [{
        "GoodCode": "",
        "Qty": 0
    }, {
        "GoodCode": "",
        "Qty": 0
    }]
}

2.28.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodeString空:成功
-16:试用品领取申请失败
-9998:该会员未确认隐私政策。
返回消息MessageString
会员编号MemberNovarchar(13)
申请编号ApplyIdvarchar(30)

2.28.4 返回结果示例

{
    "ErrorCode": "",
    "Message": "",
    "MemberNo": "",
    "ApplyId": ""
}

2.29 取消领取试用申请

接口地址: /sample/cancel接口说明: 通过本接口对指定的领取试用申请进行取消,取消后会员可以再重新进行申请接口名称: CancelSampleApply接口方式: HTTP POST 提交

2.29.1 参数说明

字段描述字段名称必填类型备注
所有者OwnerIdYvarchar(4)
申请编号ApplyIdYvarchar(13)申请编号

2.29.2 参数示例

{
    "OwnerId": "10",
    "ApplyId": "9106009076212"
}

2.29.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodeString空:处理成功;非空:失败
返回消息MessageString错误消息文本。仅错误时有返回内容。

2.29.4 返回结果示例

{
    "ErrorCode": "",
    "Message": ""
}

2.30 会员服务券预

接口地址: /coupon/reserve接口说明: 会员服务券预约申请,可以支持在已预约的基础上再做预约更新接口名称: MemberTicketReserve接口方式: HTTP POST

2.30.1 参数说明

字段描述字段名称必填类型备注
所有者OwnerIdYvarchar(4)
所属店铺StoreIdNvarchar(10)
会员编号/手机号MemberNoYvarchar(50)
服务券序列号CouponSerialNoYvarchar(20)
预约操作类型ReserveTypeYint1:预约;
2:取消预约
如果是2以下信息不用传。
预约使用本券的店铺编号ApplyStoreIdNvarchar(10)
预约使用本券的开始时间ApplyDateTimeNDatetime格式:yyyy-MM- ddTHH:mm:ss
预约使用本券的结束时间ApplyEndDateTimeNDatetime格式:yyyy-MM- ddTHH:mm:ss
预约备注信息ApplyMemoNnvarchar(200)
预约服务 BCApplyServiceEmployeeNoNvarchar(20)(2020-01-01 0:00 正式发布)

2.30.2 参数示例

{
    "OwnerId": "78",
    "StoreId": "32300000",
    "MemberNo": "XXXX",
    "CouponSerialNo": "1000000000000001",
    "ReserveType": 1,
    "ApplyStoreId": "32300000",
    "ApplyDateTime": "2017-12-31T10:00:00",
    "ApplyMemo": ""
}

2.30.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodeString空:处理成功
-1:系统错误
-2:找不到会员
-21:品牌错误
-31:券未到使用期限
-32:券已过期
-33:券已被使用
-34:券已被冻结
-35:券已被取消
-36:券不允许在该店铺使用
-37:券不存在于该会员帐户中
-38:券不存在
-9998:该会员未确认隐私政策
返回消息MessageString错误消息文本。仅错误时有返回内容。

2.30.4 返回结果示例

{
    "ErrorCode": "",
    "Message": ""
}

2.31 核销会员的券码

接口地址: /coupon/consume接口说明: 核销会员券接口名称: EC_CouponConsume接口方式: HTTP POST 提交

2.31.1 参数说明

字段描述字段名称必填类型备注
所有者OwnerIdYvarchar(4)
所属店铺StoreIdNvarchar(10)
会员编号MemberNoYvarchar(50)
核销的券序列号CouponSerialNoYvarchar(20)
核销类型ConsumptionTypeYvarchar(20)70:因需要核销优惠券而临时冻结券;--对于EC使用优惠券,订单创建时调用传递该值
71:其他原因冻结券;
20:使用券(正式核销券);--对于 EC 使用优惠券,订单支付完成时调用传递该值
10:重新恢复券;--对于 EC,在订单支付之前取消订单时调用传递该值(券状态此时应为【已冻结】才可调用)
使用本券的交易店铺编号SaleStoreIdNvarchar(10)ConsumptionType=20 或 70 或金额折扣券则必传 ConsumptionType=71 并且是服务券时或 ConsumptionType=10 不要传。
使用本券的交易 POS 机号SalePosIdNINTConsumptionType=20 或 70 或金额折扣券则必传 ConsumptionType=71 并且是服务券时或 ConsumptionType=10 不要传。
使用本券的交易小票号SaleBillNoNINTConsumptionType=20 或 70 或金额折扣券则必传 ConsumptionType=71 并且是服务券时或 ConsumptionType=10 不要传。
核销 BCSaleEmployeeNoNvarchar(20)对于服务券表示实际服务BC,其他类型的券暂时无效。 (2020-01-01 00:00正式发布)

2.31.2 参数示例

{
    "OwnerId": "78",
    "StoreId": "32300000",
    "MemberNo": "XXX",
    "CouponSerialNo": "1000000000000001",
    "ConsumptionType": "70",
    "SaleStoreId": "32300000",
    "SalePosId": 1,
    "SaleBillNo": 255
}

2.31.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodeString空:处理成功
-1:系统错误
-2:找不到会员
-21:品牌错误
-31:券未到使用期限。
-32:券已过期
-33:券已被使用
-34:券已被冻结
-35:券已被取消
-36:券不允许在该店铺使用。(EC 可以显示为不允 许在线上使用)
-37:券不存在于该会员帐户中
-38:券不存在
-39:使用本券的交易信息(店铺编号、POS 机号、小 票号)不完整
返回消息MessageString错误消息文本。仅错误时有返回内容。

2.31.4 返回结果示例

{
    "ErrorCode": "",
    "Message": ""
}

2.32 批量查询会员券信息

接口地址: /coupon/query接口说明: 分页批量查询会员券信息。本接口于 2020-01-01 0:00 正式发布。每页返回500行,如果返回结果中HasNextPage=false,则说明当前页就是最后一页接口名称: EC_GetMemberTickets接口方式: HTTP POST 提交

2.32.1 参数说明

字段描述字段名称必填类型备注
所有者OwnerIdYvarchar(4)
会员编号MemberNoNvarchar(13)MemberNo 和 Id 字段必须提供一个
发行券活动号IssueActivityIdNvarchar(13)
发行日期起始值IssueDateBeginNdatetime申请日期起始,请只精确到日期,不要传时分秒 格式:yyyy-MM-dd
发行日期截止值IssueDateEndNdatetime申请日期截止,请只精确到日期,不要传时分秒 格式:yyyy-MM-dd
券编号TicketIdNvarchar(8)
券名称TicketNameNNvarchar(100)
券码编号TicketSerialNoNvarchar(20)
券码状态StatusNvarchar(20)可支持逗号分隔传递多个状态
10:未使用;
15:已预约;
20:已使用;
70: 已冻结;
80:已取消;
90:已过期
发放店铺号IssueStoreIdNvarchar(10)
预约店铺号ApplyStoreIdNvarchar(10)
使用店铺号SaleStoreIdNvarchar(10)
【预约服务开始时间】条件范围的起始值ApplyDateTimeBeginNdatetime格式:yyyy-MM-ddTHH:mm:ss
【预约服务开始时间】条件范围的截止值ApplyDateTimeEndNdatetime格式:yyyy-MM-ddTHH:mm:ss
【有效期开始 日】条件范围的起始值UseBeginDateBeginNdatetime格式:yyyy-MM-dd
【有效期开始 日】条件范围的截止值UseBeginDateEndNdatetime格式:yyyy-MM-dd
【有效期结束 日】条件范围的起始值UseEndDateBeginNdatetime格式:yyyy-MM-dd
【有效期结束 日】条件范围的截止值UseEndDateEnddatetime格式:yyyy-MM-dd
预约服务BCApplyServiceEmployeeNoNvarchar(20)
实际核销BCSaleEmployeeNoNvarchar(20)
【取消或冻结日 期】条件范围的开始值CancelDateBeginNdatetime取消或冻结日期开始值,请只精确到日期,不要传时分秒格式:yyyy-MM-dd 配合券状态查询可精查冻结或取消的券。
【取消或冻结日 期】条件范围的截止值CancelDateEndNdatetime取消或冻结日期截止值,请只精确到日期,不要传时分秒格式:yyyy-MM-dd 配合券状态查询可精查冻结或取消的券。
页码PageNInt分页查询数据的页数,第一页传1,第二页传2,以此类推,如未传则默认值1。

2.32.2 参数示例

{
  "OwnerId": "",
  "MemberNo": "",
  "IssueActivityId": "",
  "IssueDateBegin": "2020-01-01",
  "IssueDateEnd": "2022-01-01",
  "Status": "10,15"
}

2.32.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodeString空:处理成功
-1:错误
返回消息MessageString错误消息文本。仅错误时有返回内容。
是否还有下一页 数据HasNextPagebooleantrue:还有下一页数据;
false:已经没有下一页数据了。
  • 券信息集合:Tickets
字段描述字段名称类型备注
所有者OwnerIDvarchar(4)
券码编号TicketSerialNovarchar(20)
券名称TicketNamenvarchar(50)
券产品编号TicketIdVarchar(8)
积分兑换预约编 号ReserveIdvarchar(30)
会员编号MemberNovarchar(13)
会员姓名MemberNameVarchar(50)
手机号MobileVharchar(20)已进行掩码处理。
状态编码Statusvarchar(2)10:未使用;
15:已预约;
20:已使用;
70:已冻结;
80:已取消;
90:已过期
状态名称StatusNameNvarchar(20)
使用期限开始日UseBeginDateDatetime使用期限开始日,格式:yyyy-MM-ddTHH:mm:ss
使用期限结束日UseEndDateDatetime使用期限结束日,格式:yyyy-MM-ddTHH:mm:ss
发行本券的店铺编号IssueStoreIdvarchar(10)发行本券的店铺编号
发行本券的交易POS机号IssuePosIdINT
发行本券的交易小票号IssueBillNoINT
发行本券的时间IssueDateDatetime发行本券的时间,格式:yyyy-MM-ddTHH:mm:ss
发行本券的活动编号IssueActivityIdvarchar(13)发行本券的活动编号
发行本券的活动名称IssueActivityNamenvarchar(100)发行本券的活动名称
预约使用本券的店铺编号ApplyStoreIdvarchar(10)预约使用本券的店铺编号
预约服务BCApplyServiceEmployeeNoVarhcar(20)
预约使用本券的开始时间ApplyDateTimeDatetime格式:yyyy-MM-ddTHH:mm:ss
预约使用本券的结束时间ApplyEndDateTimeDatetime格式:yyyy-MM-ddTHH:mm:ss
使用本券的店铺 编号SaleStoreIdvarchar(10)使用本券的店铺编号
券核销时间SaleDateTimeDatetime使用本券的时间
核销 BCSaleEmployeeNoVarhcar(20)
取消/冻结时间CancelDateDatetime格式:yyyy-MM-ddTHH:mm:ss
剩余天数LeftDaysInt
服务柜台编号ServiceStoreIdVarhcar(8)当券已使用,则返回使用本券的店铺,当未使用已预约,则返回预约店铺;其他情况空。
服务柜台名称ServiceStoreNameNvarchar(50)当券已使用,则返回使用本券的店铺,当未使用已预约,则返回预约店铺;其他情况空。
美容顾问编号ServiceEmployeeNoVarhcar(8)当券已使用,则返回核销BC,当未使用已预约,则返回预约BC;其他情况空。
美容顾问名称ServiceEmployeeNameNvarchar(20)当券已使用,则返回核销BC,当未使用已预约,则返回预约BC;其他情况空。
会员所属店铺编号StoreIdVarhcar(8)
会员所属店名称StoreNameNvarchar(50)
护理券类型编码ServiceTypeVarchar(2)暂未使用
护理券类型名称ServiceTypeNameNvarchar(10)暂未使用

2.32.4 返回结果示例

{
    "ErrorCode": "",
    "Message": "",
    "Tickets": [{
        "OwnerID": "",
        "TicketSerialNo": "",
        "TicketName": "",
        "TicketId": "",
        "ReserveId": "",
        "MemberNo": "",
        "MemberName": "",
        "Mobile": "",
        "Status": "",
        "UseBeginDate": "",
        "UseEndDate": "",
        "IssueStoreId": "",
        "IssueDate": "",
        "IssueActivityId": "",
        "IssueActivityName": "",
        "ApplyStoreId": "",
        "ApplyDateTime": "",
        "ApplyServiceEmployeeNo": "",
        "ApplyEndDateTime": "",
        "SaleStoreId": "",
        "SaleDateTime": "",
        "SaleEmployeeNo": "",
        "CancelDate": "",
        "LeftDays": ""
    }, {
        "OwnerID": "",
        "TicketSerialNo": "",
        "TicketName": "",
        "TicketId": "",
        "ReserveId": "",
        "MemberNo": "",
        "MemberName": "",
        "Mobile": "",
        "Status": "",
        "UseBeginDate": "",
        "UseEndDate": "",
        "IssueStoreId": "",
        "IssueDate": "",
        "IssueActivityId": "",
        "IssueActivityName": "",
        "ApplyStoreId": "",
        "ApplyDateTime": "",
        "ApplyServiceEmployeeNo": "",
        "ApplyEndDateTime": "",
        "SaleStoreId": "",
        "SaleDateTime": "",
        "SaleEmployeeNo": "",
        "CancelDate": "",
        "LeftDays": ""
    }]
}

2.33 会员券基本信息批量修改

接口地址: /coupon/update接口说明: 根据传入的修改条件和修改内容,批量修改会员优惠券基本信息接口名称: EC_BatchUpdateMemberTicketDetailInfor接口方式: HTTP POST 提交

2.33.1 参数说明

字段描述字段名称必填类型备注
所有者(条件)OwnerIdYvarchar(4)
券码(条件)TicketSerialNoYvarchar(20)TicketSerialNo 和 TicketId,IssueStoreId, StatusCondition 字段必须至少提供一个。
券编号(条件)TicketIdYvarchar(8)
发行店铺号(条件)IssueStoreIdYvarchar(10)
券状态(条件)StatusConditionYvarchar(2)状态只能是 10 或 15 或 70 或 80
券有效期结束时间(更新结果)UseEndDateYdatetime格式:yyyy-MM-dd
预约服务开始时间(更新结果)ApplyDateTimeYdatetime格式:yyyy-MM-ddTHH:mm:ss (ApplyDateTime 和 ApplyEndDateTime 字段,传入时。只能两个一起传入值或者两个一起都不传值),必须大于当前系统时间。
预约服务结束时间(更新结果)ApplyEndDateTimeYdatetime格式:yyyy-MM-ddTHH:mm:ss,必须大于等 于预约服务开始时间。
券状态(更新结果)StatusYvarchar(2)UseEndDate 和 ApplyDateTime,Status 字段必须至少提供一个。 状态只能是 10 或 15 或 70 或 80

2.33.2 参数示例

{
    "OwnerId": "10",
    "TicketSerialNo": "000020748380",
    "TicketId": "00100003",
    "IssueStoreId": "00300023",
    "StatusCondition": "70",
    "UseEndDate": "2020-12-15",
    "ApplyDateTime": "2020-02-15T00:00:00",
    "ApplyEndDateTime": "2020-02-15T00:00:00",
    "Status": "10"
}

2.33.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodeString空:处理成功
-1:错误
返回消息MessageString错误消息文本。仅错误时有返回内容。

2.33.4 返回结果示例

{
    "ErrorCode": "",
    "Message": ""
}

2.34 批量发行券

接口地址: /coupon/batchissue接口说明: 针对所有类型券,直接给指定的一批会员发行券码接口名称: EC_BatchIssueTicket接口方式: HTTP POST 提交

2.34.1 参数说明

字段描述字段名称必填类型备注
所有者OwnerIdYvarchar(4)
券编号TicketIdYvarchar(8)
使用本券的活动号ActivityIdNvarchar(13)礼品券:绑定了该券的领取试用活 动号。
其他券:为空,对于礼品券,如果参数为空则会自动查找绑定了该券的领取试用活动。
调用请求 IdRequestIdYvarchar(20)标识唯一一次调用本接口的请求编号,3天内不能使用该请求编号重 复调用。
  • 会员集合:MemberArray
字段描述字段名称必填类型备注
会员编号MemberNoYvarchar(13)
使用本券的店铺编号StoreIdNvarchar(10)如不指定可为空。
发行券数量QtyYint1.数量必须大于0。
2.对于礼品券,发行数量只能为1。

2.34.2 参数示例

{
    "OwnerId": "10",
    "TicketId": "",
    "RequestId": "10",
    "MemberArray": [{
        "MemberNo": "",
        "StoreId": "",
        "Qty": 1
    }, {
        "MemberNo": "",
        "StoreId": "",
        "Qty": 1
    }]
}

2.34.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodevarchar(6)空:处理成功-1:系统错误-21:品牌错误
返回消息Messagestring错误消息文本。仅错误时有返回内容。
  • 券集合:MemberTicksArray
字段描述字段名称类型备注
会员编号MemberNostring
券码TicketSerialNostring

2.34.4 返回结果示例

{
    "ErrorCode": "",
    "Message": "",
    "MemberTicksArray": [{
        "MemberNo": "",
        "TicketSerialNo": ""
    }, {
        "MemberNo": "",
        "TicketSerialNo": ""
    }]
}

2.35 会员设备绑定/解绑

接口地址: /device/relation接口说明: 通过调用接口,会员设备绑定/解绑。 EFFECTIM 专用接口名称: MemberDeviceRelation接口方式: HTTP POST 提交

2.35.1 参数说明

接口字段描述接口字段名称必填类型备注
品牌编号OwnerIdYString
会员编号MemberNoNString绑定时必传,解绑是非必传,一个设备,只能绑定一个会员
设备序列号DeviceSerialNoYString
操作类型OperationTypeYint0:绑定,1:解绑

2.35.2 参数示例

{
  "OwnerId": "",
  "MemberNo": "",
  "DeviceSerialNo": "1001",
  "OperationType": 0
}

2.35.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodeString空:处理成功
-1:错误
返回消息MessageString错误消息文本。仅错误时有返回内容。
设备当前已绑定会员MessageString设备已被其他会员绑定时,返回改设备当前已绑定的 会员

2.35.4 返回结果示例

{
  "ErrorCode": "",
  "Message": "",
  "BindMemberNo": ""
}

2.36 查询会员绑定设备

接口地址: /device/detail接口说明: 通过调用接口,查询会员绑定设备。 EFFECTIM 专用接口名称: GetMemberDeviceRelation接口方式: HTTP POST 提交

2.36.1 参数说明

接口字段描述接口字段名称必填类型备注
品牌编号OwnerIdYString
会员编号MemberNoYString
设备序列号DeviceSerialNoString
商品编号GoodsCodeString

2.36.2 参数示例

{
  "OwnerId": "",
  "MemberNo": "",
  "DeviceSerialNo": "1001",
  "GoodsCode": "001001"
}

2.36.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodeString空:处理成功
-1:错误
返回消息MessageString错误消息文本。仅错误时有返回内容。
返回问卷信息Data返回查询结果列表
  • 数据信息:Data
接口字段描述接口字段名称类型备注
设备序列号DeviceSerialNoString
商品编号GoodsCodeString
商品名称GoodsNameString
状态StatusString10:有效
20:无效
更新时间UpdateDateStringyyyy/MM/dd HH:mm:ss;

2.36.4 返回结果示例

{
  "ErrorCode": "",
  "Message": "",
  "Data": [
    {
      "DeviceSerialNo": "1001",
      "GoodsCode": "001001",
      "GoodsName": "商品 1",
      "Status": "10",
      "UpdateDate": "2020/12/22 10:11:20"
    },
    {
      "DeviceSerialNo": "1002",
      "GoodsCode": "001001",
      "GoodsName": "商品 2",
      "Status": "20",
      "UpdateDate": "2020/12/22 10:01:10"
    }
  ]
}

2.37 查询设备订单信息

接口地址: /device/orderinfo接口说明: 通过调用接口,查询设备订单信息。EFFECTIM 专用接口名称: GetDeviceOrderInfo接口方式: HTTP POST 提交

2.37.1 参数说明

接口字段描述接口字段名称必填类型备注
品牌编号OwnerIdYString
会员编号MemberNoYString
购买日期-开始BeginDateNStringyyyy/MM/dd 格式
购买日期-结束EndDateNStringyyyy/MM/dd 格式
店铺编号StoreIdNString
外部订单号OrderNoNStringEFFECTIM 请求时,用外部订单号即可
设备序列号DeviceSerialNoNString
商品编号GoodsCodeNString

2.37.2 参数示例

{
  "OwnerId": "",
  "MemberNo": "",
  "SaleDate": "",
  "PayDate": "",
  "BeginDate": "2020/01/01",
  "EndDate": "2022/01/01",
  "StoreId": "",
  "PosId": 1,
  "BillNo": 1335,
  "OrderNo": "1344",
  "DeviceSerialNo": "",
  "GoodsCode": "001001"
}

2.37.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodeString空:处理成功
-1:错误
返回消息MessageString错误消息文本。仅错误时有返回内容。
返回问卷信息Data返回查询结果列表
  • 数据信息:Data
字段描述字段名称类型备注
所有者OwnerIdvarchar(4)
会员编号MemberNoString
交易时间SaleDateStringyyyy/MM/dd HH:mm:ss;
支付时间PayDateStringyyyy/MM/dd HH:mm:ss;
店铺编号StoreIdvarchar(10)
POS 机号PosIdint
外部订单号OrderNoString
商品编号GoodsCodevarchar(8)
商品名称GoodsNameString
设备序列号DeviceSerialNonvarchar(50)
创建日期CreateDateStringyyyy/MM/dd HH:mm:ss;

2.37.4 返回结果示例

{
  "ErrorCode": "",
  "Message": "",
  "Data": [{
    "OwnerId": "",
    "StoreId": "",
    "PosId": 1,
    "BillNo": 1335,
    "GoodsCode": "",
    "BarCode": "",
    "DeviceSerialNo": "1001",
    "CreateDate": ""
  }]
}

2.38 开具电子发票

接口地址: /invoice/issue接口说明: 用于在外部系统如网上商城开具电子发票。在调用本接口之前,请务必与CRM确认对应的店铺是否已启用电子发票,与用户确认对应的开票方信息并提供给CRM 设置。接口名称: Ec_InvoiceIssue请求方式: HTTP POST 提交

2.38.1 参数说明

字段描述字段名称必填类型备注
公司编号OwnerIdYvarchar(4)
店铺编号shopNoYvarchar(10)
订单号orderNoYvarchar(20)2.官网:店铺号+订单号,字符串长度不超过17位。
2、OMS:订单号
开票金额amtYdecimal
订单日期orderDateYvarchar(8)YYYYMMDD 格式
微信 openIdopenIdNvarchar(50)
电话号码phoneYvarchar(8)
电子邮箱emailNvarchar(100)
项目projectNvarchar(90)
抬头/购买方名称headYvarchar(100)
购买方纳税人识别号gmf_nsrsbhNvarchar(20)
银行名称与购买方银行帐号gmf_yhzhNvarchar(100)
购买方地址电话gmf_dzdhNvarchar(100)
微信添加卡包的唯一值WX_ORDER_IDNvarchar(100)
商户所属微信公众号 APPID 或发票通 APPIDWX_APP_IDNvarchar(100)
支付宝 UIDZFB_UIDNvarchar(100)

2.38.2 参数示例

{
    "OwnerId": "",
    "shopNo": "",
    "orderNo": "",
    "amt": 1,
    "orderDate": "20200101",
    "fptAccount": "",
    "openId": "",
    "phone": "",
    "email": "",
    "project": "",
    "head": "",
    "nsrsbh": "",
    "gmf_nsrsbh": "",
    "gmf_yhzh": "",
    "gmf_dzdh": "",
    "WX_ORDER_ID": "",
    "WX_APP_ID": "",
    "ZFB_UID": ""
}

2.38.3 返回结果说明

字段描述字段名称类型备注
Result
返回状态码ErrorCodeString0:正常
-1:失败
返回消息MessageString错误消息文本。仅错误时有返回内容。
发票信息集合:InvoiceArray
发票信息对象:Invoice
发票代码FP_DMvarchar(12)
发票号码FP_HMvarchar(8)
校验码JYMvarchar(20)
开票日期KPRQvarchar(20)YYYYMMDDHHMMSS 格式
发票 PDF 下载地址PDF_URLvarchar(200)
收票地址SP_URLvarchar(250)
电子发票平台返回代码returnCodevarchar(4)
电子发票平台返回信息returnMessagevarchar(200)

2.38.4 返回结果示例

{
    "ErrorCode": "",
    "Message": "",
    "InvoiceArray": [{
        "FP_DM": "",
        "FP_HM": "",
        "JYM": "",
        "KPRQ": "",
        "PDF_URL": "",
        "SP_URL": "",
        "returnCode": "0000",
        "returnMessage": "成功"
    }, {
        "FP_DM": "",
        "FP_HM": "",
        "JYM": "",
        "KPRQ": "",
        "PDF_URL": "",
        "SP_URL": "",
        "returnCode": "0000",
        "returnMessage": "成功"
    }]
}

2.39 门店库存查询接口

接口地址: /possku/query接口说明: 门店 POS 库存查询接口名称: PosSkuStockQuery请求方式: HTTP POST 提交

2.39.1 参数说明

字段描述字段名称必填类型备注
品牌编号OwnerIdYvarchar(4)
门店编号StoreIdYvarchar(10)
库存用途StockPurposeYvarchar(4)30:积分兑换库存
商品列表GoodsArrayYvarchar(200)以逗号分隔的商品代码

2.39.2 参数示例

{
    "OwnerId": "10",
    "StoreId": "00300123",
    "StockPurpose": "30",
    "GoodsArray": "100041,100042"
}

2.39.3 返回结果说明

字段描述字段名称类型备注
Result
返回状态码ErrorCodevarchar(6)空:成功
-1:系统错误
-2:找不到门店
-3:找不商品
-21:品牌错误
返回消息Messagenvarchar(255)错误消息文本。仅错误时有返回内容。
品牌OwnerIdvarchar(4)
门店编号StoreIdvarchar(10)
库存用途StockPurposevarchar(4)
商品库存集合StockInfo
商品库存对象SkuStockInfo
商品编号GoodsCodevarchar(10)
库存数量Qtyint

2.39.4 返回结果示例

{
    "OwnerId": "10",
    "StoreId": "00300123",
    "StockPurpose": "30",
    "StockInfo": [{
        "GoodsCode": "100041",
        "Qty": 10
    }, {
        "GoodsCode": "100042",
        "Qty": 2
    }]
}

2.40 门店库存增减接口

接口地址: /possku/update
接口说明: 门店 POS 库存增加扣减
接口名称: PosSkuStockChange
请求方式: HTTP POST 提交

2.40.1 参数说明

字段描述字段名称必填类型备注
请求序号RequestIdYvarchar(50)唯一识别一次库存增减请求的流水号,每个流水号只限 3 天内进行重复请求拦截,避免出现重复请求重复增减库存。
所有者OwnerIdYvarchar(4)
门店编号StoreIdYvarchar(10)
库存用途StockPurposeYvarchar(4)30:积分兑换库存
库存调整理由ChangeReasonYvarchar(4)80:积分商城积分兑换
会员编号MemberNoNvarchar(13)
单据编号OutOrderNoNvarchar(50)外部发起库存增减的单据编号
商品库存集合StockInfoY
商品库存对象SkuStockInfoY
商品编号GoodsCodeYvarchar(10)需要增减库存的商品代码
库存数量QtyYint增减库存数量,负数扣减,正数增加。

2.40.2 参数示例

{
    "RequestId": "f4f61e6a1a704035a57fce3059cca81e",
    "OwnerId": "10",
    "StoreId": "00300123",
    "StockPurpose": "30",
    "ChangeReason": "80",
    "MemberNo": "M1003897465",
    "OutOrderNo": "4101030303003",
    "StockInfo": [{
        "GoodsCode": "100041",
        "Qty": -2
    }, {
        "GoodsCode": "100042",
        "Qty": -1
    }]
}

2.40.3 返回结果说明

字段描述字段名称类型备注
处理结果ErrorCodevarchar(10)空:成功 1:相同的 RequestId 在之前已请求并处理 成功,请勿重复请求。-1:系统错误-2:找不到门店-3:找不商品-21:品牌错误如果外部系统准确使用 RequestId 参数,则 可以将返回值为空或 1 都作为成功。
返回消息Messagenvarchar(255)错误消息文本。仅错误时有返回内容。

2.40.4 返回结果示例

{
    "ErrorCode": "",
    "Message": ""
}

2.41 店铺线上正向订单接入(下单)

接口地址: /order/push
接口说明: 店铺线上正向订单数据接入(下单)
接口名称: PushOnlineOrder
请求方式: HTTP POST 提交

2.41.1 参数说明

字段描述字段名称必填类型备注
品牌编号OwnerIdYvarchar(4)如:10
订单来源OrderSourceYvarchar(2)30:王府井 ,后续随着接入渠道增加而增加
外部订单号ExternalOrderNoYvarchar(40)
品牌方店铺编号StoreIdNvarchar(10)品牌方店铺编号或第三方店铺代码只需提供一个,如果两者都提供,优先认品牌方店铺编号
第三方店铺代码ExternalStoreIdNvarchar(30)品牌方店铺编号或第三方店铺代码只需提供一个,如果两者都提供,优先认品牌方店铺编号
品牌会员编号MemberNoNvarchar(13)【品牌方会员编号】、【会员手机号】只需提供一个,优先识别的顺序是:品牌方会员编号、会员手机号。
会员手机号码MobileNvarchar(11)【品牌方会员编号】、【会员手机号】只需提供一个,优先识别的顺序是:品牌方会员编号、会员手机号。
配送方式DeliveryTypeYvarchar(2)10:快递配送
20:到店自提
预定提货日期PickUpDateNDateTime到店自提才需要提供
顾客备注CustomerMemoNvarchar(300)
收货人姓名ReceiverNameNvarchar(20)
收货人手机号码ReceiverMobileNvarchar(20)
收货人所在省ReceiverProvinceNvarchar(20)
收货人所在市ReceiverCityNvarchar(20)
收货人所在区ReceiverDistrictNvarchar(20)
收货人详细地址ReceiverAddressNvarchar(500)
订单销售总数量TotalQtyNint
订单实际销售总金额TotalAmountNdecimal(12,2)优惠后总金额,单位元:10.01元
订单创建时间CreateOrderTimeYDateTime
支付时间PayTimeYDateTime
订单状态编码StatusCodeYvarchar(2)2:未支付
3:已付款
4:已发货
8:交易成功
9:交易关闭
订单状态描述StatusTextNvarchar(100)
服务BC号EmployeeIdNvarchar(10)
线上支付方式OnlinePayIdNvarchar(10)线上支付式:
云店:必输,固定YUNDIANPAY
其他:空或EXTERNAL
线上支付金额OnlinePayAmountNDecimal(12,2)线上支付金额,如果传了线上支付方式,则必须传线上支付金额,否则可为空。
云店:订单销售总金额=线上支付金额=商品明细销售金额汇总
  • 商品列表:OrderGoods
字段描述字段名称必填类型备注
品牌方商品编号GoodsCodeNvarchar(8)商品编号或商品条码只需提供一个,如果两者都提供,优先认商品编号
商品条码BarCodeNvarchar(20)商品编号或商品条码只需提供一个,如果两者都提供,优先认商品编号
商品名称GoodsNameYvarchar(100)
商品原单价TagPriceNdecimal(12,2)商品单原价
销售单价SalePriceYdecimal(12,2)优惠后单价,单位元:10.01 元
销售数量QtyYInt
销售金额AmountYdecimal(12,2)优惠后金额,单位元:10.01 元

2.41.2 参数示例

{
    "OwnerId": "10",
    "OrderSource": "30",
    "ExternalOrderNo": "20220609170001123456",
    "StoreId": "00300123",
    "ExternalStoreId": "00300123",
    "MemberNo": "0031000424504",
    "Mobile": "13391012345",
    "DeliveryType": "10",
    "PickUpDate": "2022-06-09 17:00:00",
    "CustomerMemo": "需要积分哦",
    "ReceiverName": "张XX",
    "ReceiverMobile": "15601700000",
    "ReceiverProvince": "上海市",
    "ReceiverCity": "",
    "ReceiverDistrict": "",
    "ReceiverAddress": "青浦区诸光路188号201",
    "TotalQty": 2,
    "TotalAmount": 1040.00,
    "CreateOrderTime": "2022-06-09 17:00:00",
    "PayTime": "2022-06-09 17:00:00",
    "StatusCode": "3",
    "StatusText": "已付款",
    "OrderGoods": [{
        "TagPrice": 520.00,
        "SalePrice": 520.00,
        "GoodsCode": "10042",
        "BarCode": "",
        "GoodsName": "SWL 资生堂透白美肌亮润柔肤水(清爽型)",
        "Qty": 1,
        "Amount": 520.00
    }, {
        "TagPrice": 520.00,
        "SalePrice": 520.00,
        "GoodsCode": "",
        "BarCode": "729238011823",
        "GoodsName": "SBN金采丰润眼部护理精华霜 2ML",
        "Qty": 1,
        "Amount": 520.00
    }]
}

2.41.3 返回结果说明

字段描述字段名称类型备注
处理结果ErrorCodevarchar(10)空:成功
-1:系统错误
-2:品牌错误
-3:参数错误
返回消息Messagenvarchar(255)错误消息文本。仅错误时有返回内容。

2.41.4 返回结果示例

{
    "ErrorCode": "",
    "Message": ""
}

2.42 店铺线上逆向订单接入(退货)

接口地址: /order/refund
接口说明: 店铺线上逆向订单数据接入(退货)
接口名称: PushOnlineOrderRefund
请求方式: HTTP POST 提交

2.42.1 参数说明

字段描述字段名称必填类型备注
品牌编号OwnerIdYvarchar(4)如:10
订单来源OrderSourceYvarchar(2)30:王府井
退货单号ExternalRefundOrderNoYvarchar(40)唯一标识一次退货的单据流水号
原始订单号OriginalExternalOrderNoYvarchar(40)原始正向订单号
退货总数量TotalQtyYint
退货总金额TotalAmountYdecimal(12,2)单位元:10.01 元
退货时间RefundTimeYDateTime
退货原因RefundReasonvarchar(500)
退货小票号TicketNovarchar(40)
退货单状态编码StatusCodeYvarchar(2)1:退货中
3:退货完成
4:退货失败
9:交易关闭
退货单状态描述StatusTextvarchar(100)
  • 退货商品列表:RefundGoods
字段描述字段名称必填类型备注
品牌方商品编号GoodsCodevarchar(8)商品编号或商品条码只需提供一个,如果两者都提供,优先认商品编号
商品条码BarCodevarchar(20)商品编号或商品条码只需提供一个,如果两者都提供,优先认商品编号
商品名称GoodsNameYvarchar(100)
退货数量QtyYInt
退货金额AmountYdecimal(12,2)退货商品销售金额,单位元:10.01 元

2.42.2 参数示例

{
    "OwnerId": "10",
    "OrderSource": "30",
    "ExternalRefundOrderNo": "202206091700218971294",
    "OriginalExternalOrderNo": "20220609170021123456",
    "TotalQty": 2,
    "TotalAmount": 1040.00,
    "RefundTime": "2022-06-09 17:44:00",
    "RefundReason": "选错了",
    "TicketNo": "",
    "StatusCode": "3",
    "StatusText": "退货完成",
    "RefundGoods": [{
        "GoodsCode": "10042",
        "BarCode": "",
        "GoodsName": "SWL资生堂透白美肌亮润柔肤水(清爽型)",
        "Qty": 1,
        "Amount": 520.00
    }, {
        "GoodsCode": "",
        "BarCode": "729238011823",
        "GoodsName": "SBN金采丰润眼部护理精华霜2ML",
        "Qty": 1,
        "Amount": 520.00
    }]
}

2.42.3 返回结果说明

字段描述字段名称类型备注
处理结果ErrorCodevarchar(10)空:成功
-1:系统错误
-2:品牌错误
-3:参数错误
返回消息Messagenvarchar(255)错误消息文本。仅错误时有返回内容。

2.42.4 返回结果示例

{
    "ErrorCode": "",
    "Message": ""
}

2.43 获取问卷基础信息

接口地址: /questionnaire/query
接口说明: 获取问卷基本信息
接口名称: GetQuestionnaireInfo
请求方式: HTTP POST 提交

2.43.1 参数说明

字段说明字段必填类型备注
品牌编号OwnerId字符串
问卷类型 / 情景StoreId字符串60:基本皮肤测试问卷;
61:敏感性皮肤皮肤测试问卷;
62:服务满意度调查

2.43.2 参数示例

{
  "OwnerId": "",
  "Scene": "60"
}

2.43.3 返回结果说明

字段描述字段名称类型备注
错误代码ErrorCodeString空:处理成功
-1:错误
错误消息MessageString错误消息文本。仅错误时有返回内容。
问卷信息DataData问卷详细信息
  • 问卷详细信息:Data
接口字段描述接口字段名称类型备注
品牌编号OwnerIdString
问卷编号QuestionnaireIdString
问卷名称QuestionnaireNameString
场景SceneString60:肌肤测试基础问卷 61:肌肤测试敏感肌 问卷
问题列表QuestionListQuestion[]问题列表
  • 问题列表:QuestionList
接口字段描述接口字段名称类型备注
排序SortIndexint显示序号
问题 IdQuestionIdint
问题内容QuestionNameString
问题类型MtypeString00:单选;
10:多选;
20:填空
是否必答题IsMustAnswerint0:非必答
1:必答
可输入选项序号InputNoIndexint为 0 时,表示该问题没有可输入的选项
输入类型InputTypeStringEmail、MobilePhone、Number,为空时表示不限制
最多选项MostOptionsint针对多选时,可设置最多选择几个项目。0 或空表示不限制
题目分值ScoreintMtype = 20 时有值
选项OptionsOption[]单选或多选题的选项列表
  • 问题选项列表:Options
接口字段描述接口字段名称类型备注
选项 IdIdint
选项内容NameString
是否允许输入AllowInputint1:选择该选项需要输入内容
0或空
选项分值Scoreint0或正整数

2.43.4 返回结果示例

{
    "ErrorCode": "",
    "Message": "",
    "Data": {
        "OwnerId ": "",
        "QuestionnaireId": "91141207014",
        "QuestionnaireName": "肌肤问卷",
        "Scene": "60",
        "QuestionList": [{
            "SortIndex ": 1,
            "QuestionId": 1,
            "QuestionName": "是否有小孩",
            "Mtype": "00",
            "IsMustAnswer": 1,
            "InputNoIndex": 0,
            "InputType": "",
            "MostOptions": 0,
            "Options": [{
                "Id ": 1,
                "Name": "是",
                "Score": 20
            }, {
                "Id ": 2,
                "Name": "否",
                "Score": 10
            }]
        }, {
            "SortIndex ": 2,
            "QuestionId": 2,
            "QuestionName": "你的邮箱地址",
            "Mtype": "20",
            "IsMustAnswer": 1,
            "InputNoIndex": 0,
            "InputType": "Email",
            "MostOptions": 0,
            "Score": 2
        }]
    }
}

2.44 上传问卷结果信息

接口地址: /questionnaire/save
接口说明: 上传问卷结果
接口名称: SaveQuestionnaireResultInfo
请求方式: HTTP POST 提交

2.44.1 参数说明

字段描述字段名称必填类型备注
请求流水号RequestNoYString请求唯一流水号,每次请求时生成,三天之内不可重复。当某次请求因网络或 系统问题没有接收到返回结果可以再次相同的数据重复请求,以确保上传成功,CRM按流水号识别以确保不会保存重复数据。
问卷类型/场景SceneYString60:肌肤测试基础问卷;
61:肌肤测试敏感肌问卷;
62:服务满意度调查
品牌编号OwnerIdYString
会员编号MemberNoYString
问卷IdQuestionnaireIdYint
调查时间ReportDateYString调查时间 yyyy/MM/dd HH:mm:ss 格式
问题列表QuestionListYQuestion[]
  • 问题列表:QuestionList
接口字段描述接口字段名称必填类型备注
排序SortIndexYint显示序号
问题 IdQuestionIdYint
填写内容ContentNString用户填写内容 Mtype = 20 时必填
选项OptionsNOption[]
  • 选项选择结果:Options
接口字段描述接口字段名称必填类型备注
选项 idIdYint
选中值ValueYint0:未选中
1:选中
输入的内容ContentNString如果选择当前选项需要输入内容时填写

2.44.2 参数示例

{
    "OwnerId": "",
    "MemberNo": "M2243",
    "RequestNo": "33535535",
    "QuestionnaireId": 91141207014,
    "ReportDate": "2020/10/28 18:10:20",
    "Scene": "62",
    "QuestionList": [{
        "SortIndex": 1,
        "QuestionId": 1,
        "Options": [{
            "Id": 1,
            "Value": 1
        }, {
            "Id": 2,
            "Value": 0
        }]
    }, {
        "SortIndex": 2,
        "QuestionId": 2,
        "Options": [{
            "Id": 1,
            "Value": 1
        }, {
            "Id": 2,
            "Value": 0
        }],
        "Content": "tent@qq.com"
    }]
}

2.44.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodeString空:处理成功 -1:错误
返回消息MessageString错误消息文本。仅错误时有返回内容。

2.44.4 返回结果示例

{
  "ErrorCode": "",
  "Message": ""
}

2.45 获取问卷调查结果

接口地址: /questionnaire/result
接口说明: 通过调用接口,获取问卷调查结果,返回用户最近一次问卷调查结果
接口名称: GetQuestionnaireResultInfo
请求方式: HTTP POST 提交

2.45.1 参数说明

字段描述字段名称必填类型备注
品牌编号OwnerIdYString
用户编号MemberNoYString
问卷 IdQuestionnaireIdNString
场景SceneYString60:肌肤测试基础问卷;
61:肌肤测试敏感肌问卷;
62:服务满意度调查
查询日期SearchDateNString查询日期,yyyy/MM/dd 格式,数据返回调查日期大于查询日期数据

2.45.2 参数示例

{
    "OwnerId": "",
    "MemberNo": "M2243",
    "QuestionnaireId": "1",
    "Scene": "60",
    "SearchDate": "2020/10/28"
}

2.45.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodeString空:处理成功
-1:错误
返回消息MessageString错误消息文本。仅错误时有返回内容。
返回问卷信息DataData[]返回查询结果列表
  • 数据信息:Data
接口字段描述接口字段名称类型备注
问卷编号QuestionnaireIdString
问卷名称QuestionnaireNameString
场景SceneString60:问卷
61:用户关注问题与备注信息
调查时间ReportDateString调查时间 yyyy/MM/dd HH:mm:ss 格式
总得分TotalScoreint
问题列表QuestionLIstQuestion[]问题列表
  • 问题列表:QuestionLIst
接口字段描述接口字段名称类型备注
排序SortIndexint显示序号
问题 IdQuestionIdint
问题内容QuestionNameString
问题类型MtypeString00:单选;
10:多选;
20:填充
是否必答题IsMustAnswerint0:非必答
1:必答
可输入选项序号InputNoIndexint为 0 时,表示该问题没有可输入的选项
输入类型InputTypeStringEmail、MobilePhone、Number,为空时表示不限制
最多选项MostOptionsint针对多选时,可设置最多选择几个项目。0 或空表示不限制
填写内容ContentString用户填写内容 Mtype = 20 时
  • 选项选择结果:Options
接口字段描述接口字段名称类型备注
选项 idIdint
选项内容NameString
选项分值Scoreint0或正整数,且整个问卷各题最大得分总和不大于100
选中值Valueint0:未选中
1:选中
填写内容ContentString当前选项有输入内容时填写

2.45.4 返回结果示例

{
    "ErrorCode": "",
    "Message": "",
    "Data": [{
        "QuestionnaireId ": "91141207014",
        "QuestionnaireName ": "肌肤问卷",
        "Scene": "60",
        "ReportDate": "2020/10/28 18:10:20",
        "TotalScore ": 88,
        "QuestionList": [{
            "SortIndex": 1,
            "QuestionId": 1,
            "QuestionName": "是否有小孩",
            "Mtype": "00",
            "IsMustAnswer": 1,
            "InputNoIndex": 0,
            "InputType": "",
            "MostOptions": 0,
            "Options": [{
                "Id": 1,
                "Name": "是",
                "Score": 2,
                "Value": 1
            }, {
                "Id": 2,
                "Name": "否",
                "Score": 20,
                "Value": 0
            }]
        }, {
            "SortIndex": 2,
            "QuestionId": 2,
            "QuestionName": "你的邮箱地址",
            "Mtype": "20",
            "IsMustAnswer": 1,
            "InputNoIndex": 0,
            "InputType": "Email",
            "MostOptions": 0,
            "Content": "tent@qq.com",
            "Score": 2
        }]
    }]
}

2.46 上传肌肤测试报告

接口地址: /skin/save
接口说明: 通过调用接口,上传肌肤测试报告
接口名称: SaveSkinReportReslut
请求方式: HTTP POST 提交

2.46.1 参数说明

接口字段描述接口字段名称必填类型备注
所有者(品牌)OwnerIdYString
会员编号MemberNoYString
报告 IdReportIdYString唯一编号,接口接收到相同 ReportId 信息时,忽略
测试时间ReportDateYString测试时间 yyyy/MM/dd HH:mm:ss 格式
年龄AgeYint
肌肤年龄SkinAgeYint
击败同龄人百分比PercentageYdecimal击败同龄人百分比
皱纹数据WrinkleY
肌肤数据SkinListYSkin[]肌肤数据
图片数据ImageListYDictionary图片信息
版本号VersionYString版本号
  • 皱纹数据类型:Wrinkle
接口字段描述接口字段名称必填类型备注
皱纹数据列表TroubleListYTrouble[]皱纹数据列表
  • 皱纹数据类型:TroubleList
接口字段描述接口字段名称必填类型备注
类型TypeYint皱纹类型,1-鱼尾纹,2-框周纹,8- 抬头皱纹,16-法令纹,32-抬头细 纹,64-口角纹,128-眉间纹,256-泪沟
名称NameYString
等级LevelYdecimal
最小值AvgMinYdecimal等级平均范围最小值
最大值AvgMaxYdecimal等级平均范围最大值
对年龄的影响AgeEffectYdecimal对年龄的影响,正数为老 x 岁,负数 为年轻 x 岁
  • 肌肤数据类型:SkinList
接口字段描述接口字段名称必填类型备注
编号IdYString
名称NameYString
等级LevelYdecimal
最小值AvgMinYdecimal等级平均范围最小值
最大值AvgMaxYdecimal等级平均范围最大值
对年龄的影响AgeEffectYdecimal对年龄的影响,正数为老 x 岁,负数 为年轻 x 岁

图片信息 ImageList 对应的 key 和名称

序号Key名称
1mark_sensitiveness敏感标注纹理
2face_white白色光人脸纹理
3mark_eye_bag眼袋标注纹理
4face_brown棕色光人脸纹理
5mark_dark_circle黑眼圈标注纹理
6mark_under_eye_wrinkle眶周纹标注纹理
7mark_lacrimal_groove泪沟标注纹理
8face_gray灰色光人脸纹理
9mark_crows_feet鱼尾纹标注纹理
10mark_visible_pores毛孔粗大标注纹理
11mark_forehead_wrinkle抬头纹标注纹理
12mark_cheek苹果肌标注纹理
13mark_spot色斑标注纹理
14face_uvUV 光人脸纹理
15landmarks_2d模型人脸点信息,用于创建热力图
16mark_nasolabial_folds法令纹标注纹理
17mark_clogged_pores毛孔堵塞标注纹理
18mark_frown_wrinkle眉间皱纹标注纹理
19model3D 模型文件
20mark_narionette_lines口角纹标注纹理
21mark_pimple痘痘标注纹理
22face_red红色光人脸纹理
23mark_lower_lip_cheek口角羊腮标注纹理
24submodel_jaw_line_front下颌缘子模型-中
25submodel_jaw_line_left下颌缘子模型-左
26submodel_jaw_line_right下颌缘子模型-右

注:Image 上传不限制 key,多传少传接口都接收

2.46.2 参数示例

{
    "OwnerId": "",
    "MemberNo": "",
    "ReportId": "335355366",
    "ReportDate": "2020/10/28 18:10:20",
    "Age": 34,
    "SkinAge": 28,
    "Percentage": 0.2,
    "Wrinkle": {
        "TroubleList": [{
            "Type": 1,
            "Name": "鱼尾纹",
            "Level": 1.9,
            "AvgMin": 1.8,
            "AvgMax": 2.4,
            "AgeEffect": 1.6
        }, {
            "Type": 2,
            "Name": "框周纹",
            "Level": 1.9,
            "AvgMin": 1.8,
            "AvgMax": 2.4,
            "AgeEffect": 1.6
        }]
    },
    "SkinList": [{
        "Id": "eye_bags",
        "Name": "眼袋数据",
        "Level": 2.5,
        "AvgMin": 1.7,
        "AvgMax": 3,
        "AgeEffect": -3.2
    }, {
        "Id": "pore",
        "Name": "毛孔数据",
        "Level": 1.9,
        "AvgMin": 1.4,
        "AvgMax": 2.9,
        "AgeEffect": -3.2
    }],
    "ImageList": {
        "mark_sensitiveness": "",
        "face_white": ""
    },
    "Version": "0.1.3"
}

2.46.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodeString空:处理成功
-1:错误
返回消息MessageString错误消息文本。仅错误时有返回内容。

2.46.4 返回结果示例

{
  "ErrorCode": "",
  "Message": ""
}

2.47 查询肌肤测试报告

接口地址: /skin/result
接口说明: 通过调用接口,查询肌肤测试报告
接口名称: GetSkinReportReslut
请求方式: HTTP POST 提交

2.47.1 参数说明

接口字段描述接口字段名称必填类型备注
所有者(品牌)OwnerIdYString
会员编号MemberNoYString
报告 IdReportIdNString指定报告时必填,如有值,则 SearchDate 可为空
查询日期SearchDateNString查询日期,yyyy/MM/dd 格式,数据 返回调查日期大于查询日期数据,未指定 ReportId 时必填

2.47.2 参数示例

{
    "OwnerId": "",
    "MemberNo": "",
    "ReportId": "",
    "SearchDate": "2020/10/28"
}

2.47.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodeString空:处理成功
-1:错误
返回消息MessageString错误消息文本。仅错误时有返回内容。
返回问卷信息Data返回查询结果列表
  • 数据信息:Data
字段描述字段名称类型备注
报告 IdReportIdString报告 Id
所有者(品牌)OwnerIdString
会员编号MemberNoString
测试日期ReportDateString测试时间 yyyy/MM/dd HH:mm:ss 格式
年龄Ageint
肌肤年龄SkinAgeint
击败同龄人百分比Percentagedecimal击败同龄人百分比
皱纹数据Wrinkle
肌肤数据SkinListSkin[]肌肤数据
图片数据ImageListDictionary
版本号VersionString版本号
  • 皱纹数据类型:Wrinkle
字段描述字段名称类型备注
皱纹数据列表TroubleListTrouble[]皱纹数据列表
  • 皱纹数据类型:TroubleList
字段描述字段名称类型备注
类型Typeint皱纹类型:
1:-鱼尾纹
2:框周纹
8:抬头皱纹
16:法令纹
32:抬头细纹
64:口角纹
128:眉间纹
256:泪沟
名称NameString
等级Leveldecimal
最小值AvgMindecimal等级平均范围最小值
最大值AvgMaxdecimal等级平均范围最大值
对年龄的影响AgeEffectdecimal对年龄的影响,正数为老 x 岁,负数为年轻 x 岁
  • 肌肤数据类型:SkinList
字段描述字段名称类型备注
编号IdString
名称NameString
等级Leveldecimal
最小值AvgMindecimal等级平均范围最小值
最大值AvgMaxdecimal等级平均范围最大值
对年龄的影响AgeEffectdecimal对年龄的影响,正数为老 x 岁,负数为年轻 x 岁

2.47.4 返回结果示例

{
    "ErrorCode": "",
    "Message": "",
    "Data": [{
        "ReportId": "45355345",
        "OwnerId": "",
        "MemberNo": "",
        "ReportDate": "2020/10/28 18:10:20",
        "Age": 34,
        "SkinAge": 28,
        "Percentage": 0.2,
        "Wrinkle": {
            "TroubleList": [{
                "Type": 1,
                "Name": "鱼尾纹",
                "Level": 1.9,
                "AvgMin": 1.8,
                "AvgMax": 2.4,
                "AgeEffect": 1.6
            }, {
                "Type": 2,
                "Name": "框周纹",
                "Level": 1.9,
                "AvgMin": 1.8,
                "AvgMax": 2.4,
                "AgeEffect": 1.6
            }]
        },
        "SkinList": [{
            "Id": "eye_bags",
            "Name": "眼袋数据",
            "Level": 2.5,
            "AvgMin": 1.7,
            "AvgMax": 3,
            "AgeEffect": -3.2
        }, {
            "Id": "pore",
            "Name": "毛孔数据",
            "Level": 1.9,
            "AvgMin": 1.4,
            "AvgMax": 2.9
        }],
        "ImageList": {
            "mark_sensitiveness": "",
            "face_white": ""
        },
        "Version": "0.1.3"
    }]
}

2.48 更新肌肤测试报告图片

接口地址: /skin/update
接口说明: 通过调用接口,更新肌肤测试报告图片
接口名称: UpdateSkinReportImage
请求方式: HTTP POST 提交

2.48.1 参数说明

接口字段描述接口字段名称必填类型备注
所有者(品牌)OwnerIdYString
报告 IdReportIdYString
图片数据ImageListYDictionary更新时支持单个 key 图片更新,只需上传需要更新的图片key和value,清空图片时,value传“”即可

2.48.2 参数示例

{
    "OwnerId": "",
    "ReportId": "335355366",
    "ImageList": {
        "mark_sensitiveness": "",
        "face_white": ""
    }
}

2.48.3 返回结果说明

字段描述字段名称类型备注
返回状态码ErrorCodeString空:处理成功
-1:错误
返回消息MessageString错误消息文本。仅错误时有返回内容。

2.48.4 返回结果示例

{
  "ErrorCode": "",
  "Message": ""
}

2.49 上传肌肤测试信息

接口地址: /skin/saveConsultResult
接口说明: 通过调用接口,上传肌肤测试结果。仅用于IPSA
接口名称: SaveSkinConsultResult
请求方式: HTTP POST 提交

2.49.1 参数说明
接口字段描述接口字段名称必填类型备注
所有者(品牌)brandYStringBrand Code
会员编号vipCodeYStringVIP Code in CRM VIP Master
店铺编号storeCodeYStringCRM/POS Store Code
员工编号staffCodeYStringCRM/POS Staff Code
咨询日期consultDateYStringConsultation Date,yyyy-MM-dd
咨询时间consultTimeYStringConsultation Time,HH:mm:ss
发送选项sendOptionNString"0":Normal
"1":Update(Consult Continued)
"2":Resend (Send from history data)当值为 1 或 2 时,“品牌、会员编号、员工编号、咨询日期、咨询时间”几个字段值不能发生变化,保持与第一次传送时一致。
发送日期sendDateYStringSend Date,yyyy-MM-dd
发送时间sendTimeYStringSend Time,HH:mm:ss
CoursecourseListYString ArraySkin measurement Course List Array
处方笺问题列表questionList[]YquestionListQuestion List Array
处方笺信息recipeInfoNrecipeInfoRecipe Info
是否传送历史数据isHistoryNBooltrue:传送历史数据,不会推送模板消息和短信;
空或 false:不是传送历史数据,是实际的现场发生的业务,会推送模板消息和短信。
数据来源dataSourceYString固定值 CP
  • questionList 类型
接口字段描述接口字段名称必填类型备注
问题描述NameYStringDescription
字段名称fieldNameYStringConsultation Field Name
答案类型answerTypeYStringAnswer Type: STRING or NUMERIC
字符型值answerValueStringYStringAnswer Value String, for answer type = STRING 为空时填 null
数值型值answerValueNumericYStringAnswer Value Numeric, for answer type = NUMERIC 为空时填 null
  • recipeInfo 类型
接口字段描述接口字段名称必填类型备注
主题代码recipeThemeCodeYStringTheme Code
肌肤问题已选择列表skinConditionList[]YString ArraySkinCondition Selected Item ,每个code 单独一行
护理已选列表carePointList[]YString ArrayCarePoint Selected Item 每个 code单独一行
2.49.2 参数示例
{
    "brand": "41",
    "vipCode": "M4100063080",
    "storeCode": "10300033",
    "staffCode": "00007809",
    "consultDate": "2020-08-31",
    "consultTime": "11:37:17",
    "sendOption": "0",
    "sendDate": "2020-08-31",
    "sendTime": "11:54:38",
    "isHistory": false,
    "dataSource": "CP",
    "courseList": [
        "basiccourse"
    ],
    "questionList": [
        {
            "fieldName": "Moisture",
            "answerType": "NUMERIC",
            "answerValueString": null,
            "answerValueNumeric": 21
        },
        {
            "fieldName": "RecommendationControlBase",
            "answerType": "STRING",
            "answerValueString": "Yellow",
            "answerValueNumeric": null
        }
    ],
    "recipeInfo": {
        "recipeThemeCode": "7",
        "skinConditionList": [
            "203",
            "211",
            "603",
            "607",
            "711"
        ],
        "carePointList": [
            "103",
            "1202",
            "202",
            "302",
            "403",
            "503",
            "603",
            "703",
            "802",
            "902",
            "1001",
            "1101",
            "1103"
        ]
    }
}
2.49.3 返回结果说明
字段描述字段名称类型备注
返回状态码errorCodeNumber0:成功
-20001,-20002,-30001:参数错误品牌编号不合法获取会员信息失败
-30002:获取员工信息失败
-30004:保存处方笺信息失败
-8000:调用接口引发异常。(不加密返回)
返回消息errorMessageString错误消息文本。仅错误时有返回内容。
处方笺编号consultResultIdStrng处方笺编号。仅成功时返回内容。
2.49.4 返回结果示例
{
    "errorCode": 0,
    "errorMessage": "",
    "consultResultI": "2020090710001"
}

2.50 获取最近一次肌肤测试结果链接

接口地址: /skin/getLastConsultResultUrl
接口说明: 通过调用接口,获取最近一次肌肤测试结果网页链接。仅用于 IPSA。
接口名称: GetLastSkinConsultResultUrl
请求方式: HTTP POST 提交

2.50.1 参数说明
接口字段描述接口字段名称必填类型备注
所有者(品牌)brandYStringBrand Code
会员编号vipCodeYStringVIP Code in CRM VIP Master
仅ultimatexcourseonlyUltimatexcourseYBooleantrue:返回最后一次含ultimatexcourse的肌肤测试结果
false:返回最后一次肌肤测的结果,默认false
2.50.2 参数示例
{
    "brand": "41",
    "vipCode": "M4100063080",
    "onlyUltimatexcourse": true
}
2.50.3 返回结果说明
字段描述字段名称类型备注
返回状态码errorCodeNumber详见下方接口错误一览表
返回消息errorMessageString错误消息文本。仅错误时有返回内容。
网页链接urlString网页链接
肌肤含氧量OxygenLevelStringHigh、Low;仅onlyUltimatexcourse=true 时返回
皮脂分泌力SebumString仅onlyUltimatexcourse=true 时返回
2.50.4 返回结果示例
{
    "errorCode": 0,
    "errorMessage": "",
    "url": "",
    "OxygenLevel": "High",
    "Sebum":"66",
}

2.51 店铺 POS 实时下单接口 (正向)

接口地址: /posorder/create
接口说明: 外部系统调用本接口上传订单信息并实时下单结算。直营店还包括支付功能,返回开票页面地址。
接口名称: POSOrderCreate
请求方式: HTTP POST 提交

2.51.1 参数说明
接口字段描述接口字段名称必填类型备注
品牌编号OwnerIdYvarchar如:10
外部订单来源渠道OrderSourceYvarchar贩卖机:80
外部订单号ExternalOrderNoYvarchar建议 OrderSource 开头,如贩卖机以80 开头。字符串长度建议25位以上。
品牌方店铺编号StoreIdYvarchar
品牌会员编号MemberNoYvarchar必须外部系统先验证会员并传递会员编号。
手机号码MobileNvarchar预留备用,暂无需传递
顾客备注CustomerMemoNvarchar
订单销售总数量TotalQtyNint
原价销售总金额TotalAmountNdecimal原价销售总金额,单位元:10.01 元 = SUM(商品明细 Amount)
优惠后销售总金额TotalAferSaleAmountNdecimal(12,2)优惠后销售总金额,单位元:10.01 元。= SUM(商品明细 AferSaleAmount)
优惠券金额CouponAmountNdecimal优惠券金额,单位元:10.01 元。
实际支付金额PayAmountNdecimal实际支付金额,单位元:10.01 元。顾客实际需要支付的金额
支付码PayBarcodeNvarchar扫描顾客的微信或支付宝的支付码(无需给支付码类型),仅直营店并且需要 POS 做支付操作时才需传递,否则传递空值
支付方式PayIdNvarchar57:售卖机支付(对于该支付方式 POS 不会做实际支付操作)仅直营店才需上传,经销店无需上传
服务 BC 编号EmployeeIdNvarchar贩卖机传“999999”+OwnerId
  • 商品列表 OrderGoods
字段描述字段名称类型备注
品牌方商品编号GoodsCodevarchar(8)商品编号或商品条码只需提供一个,如果两者都提供,优先认商品编号
商品条码Barcodevarchar(20)商品编号或商品条码只需提供一个,如果两者都提供,优先认商品编号
商品原单价PriceYdecimal(12,2)商品原价
实际销售单价SalePriceYdecimal(12,2)优惠后单价,单位元:10.01 元
销售数量QtyYInt
原价销售金额AmountYdecimal(12,2)原价金额,单位元:10.01 元 = Price * Qty
实际销售金额AferSaleAmountYdecimal(12,2)优惠后金额,单位元:10.01 元 = SalePrice * Qty
赠品标识GiftFlagint0:非赠品
1:赠品
2.51.2 参数示例
{
    "OwnerId": "10",
    "OrderSource": "30",
    "ExternalOrderNo": "20220609170001123456",
    "StoreId": "00300123",
    "MemberNo": "0031000424504",
    "Mobile": "13391012345",
    "CustomerMemo": "么么哒哦",
    "TotalQty": 2,
    "TotalAmount": 1040.00,
    "TotalAfterSaleAmount": 1040.00,
    "CouponAmount": 0.00,
    "PayAmount": 1040.00,
    "PayBarcode": "23040404050500600688",
    "PayId": "54",
    "EmployeeId": "99999910",
    "OrderGoods": [
        {
            "Price": 520.00,
            "SalePrice": 520.00,
            "GoodsCode": "10042",
            "Barcode": "",
            "GoodsName": "SWL 资生堂透白美肌亮润柔肤水(清爽型)",
            "Qty": 1,
            "Amount": 520.00,
            "AferSaleAmount": 520.00,
            "GiftFlag": null
        },
        {
            "Price": 520.00,
            "SalePrice": 520.00,
            "GoodsCode": "",
            "Barcode": "729238011823",
            "GoodsName": "SBN金采丰润眼部护理精华霜2ML",
            "Qty": 1,
            "Amount": 520.00,
            "AferSaleAmount": 520.00,
            "GiftFlag": null
        }
    ]
}
2.51.3 返回结果说明
字段描述字段名称类型备注
处理结果ErrorCodevarchar(10)空:成功
1:订单已存在,并在之前已支付成功。
2:订单已存在,使用此次支付码已支付成功。
-1:系统错误
-2:品牌错误
-3:参数错误
-4:数据校验错误:xxxx
-5:支付失败
-10:订单已存在,与此次订单金额不相等。
返回消息Messagenvarchar(500)错误消息文本。仅错误时有返回内容。
外部订单号ExternalOrderNovarchar(50)与传入参数外部订单号相同
POS 交易号POSTradeNovarchar(10)支付成功:POS 生成交易的交易号(BillNo)
支付商户订单号PayTradeNovarchar(50)支付成功,支付平台返回的商户订单号
支付金额PayAmountdecimal(12,2)支付成功:支付平台返回的实际支付金额
支付码PayBarcodevarchar(50)支付成功:实际支付成功的支付码
开票链接InvoiceUrlvarchar(2000)支付成功:开票页面地址,外部调用方可以按实际要求生成自定义款式二维码或其他方式提供给顾客开票。
2.51.4 返回结果示例
{
    "ErrorCode": "",
    "Message": "",
    "InvoiceQrCodeUrl": "https://www.fapiao.com/fpt-wechat/wxscan/wxkp.do?r=tYd0Z13blz5ZeKU8uNyN0ZoaRe%2fGf9SH1fj4YwfqEanV0xVerH6gQr7W%2bIA6U2UevC4qSUyIjZ1JWJUSWwagA%3d%3d&id=1rfF"
}

2.52 数电发票-开票申请

接口地址: /invoice/apply
接口说明: 外部系统调用本接口上传订单信息申请数电发票开票。
接口名称: ApplyInvoice
请求方式: HTTP POST 提交

2.52.1 参数说明
字段名称字段描述类型长度必填备注
品牌编码OwnerIdString4Y
店铺编码StoreIdString10Y
开票申请号InvoiceOrderNoString28Y唯一对应一次开票,因退货导致多次开票时开票申请号需要重新发号。可以基于销售订单号+ 序号作为开票申请号,例如销售订单号 A:首次购买:A01,部分退后剩余商品:A02(收到该订单将会红冲掉A01 对应的开票).如全退,A02 中剩余商品为空,金额为 0。
开票信息InvoiceObjectY
开票订单头信息InvoiceOrderObjectY
开票订单明细信息InvoiceOrderItemsArrayY

Invoice 类型

字段名称字段描述类型长度必填备注
抬头类型HeadTypeintY1:个人及政府事业单位,2:企业
发票类型InvoiceTypeintY0:电子发票(专用发票)、1:电子发票(普通发票)
抬头/购买方名称HeadString100Y
购买方纳税人识别号TaxNoString20抬头类型为企业时必填
接收发票的手机号ContactMobileString20Y
接收发票的电子邮箱ContactEmailString100Y
购买方开户行名称BankNameString100
购买方银行帐号BankAccountString100
购买方电话PhoneString20
购买方地址AddressString100
开票备注RemarkString130
销售类型SalesTypeString2YS:销售;R:退货
原始销售订单号TradeOrderNoString40Y原始的销售订单号
被退的开票申请号OrginalInvoiceOrderNoString40退货时必填
销售订单日期OrderDateDateTimeY等于商品明细行的OrginalAmount合计。
开票订单销售金额OrginalAmountDecimal12,2Y等于商品明细行的 AfterAmount 合计。
开票订单销售金额(优惠后)AfterAmountDecimal12,2Y
可开票金额InvoiceAmountDecimal12,2Y当前开票的订单对应的可开票金额:优惠后金额-不可开票的金额。退货可不传。
商品序号LineNoIntY
商品编码GoodsCodeString20Y
店铺编号StoreIdString10Y
单位UnitString10
原价OrginalPriceDecimal12,2Y
销售数量SaleQtyintY销售:销售数量,正数。 明细有正数,无负数
赠品区分GiftFlagintY0:非赠品;1:赠品
原价销售金额OrginalAmountDecimal12,2YOrginalPrice*SaleQty 销售:销售金额,正数;退货:退货金额,负数。
实际销售金额AfterAmountDecimal12,2Y销售:优惠后的销售金额,正数;退货:实际退货金额,负数。
2.52.2 参数示例
{
    "OwnerId": "10",
    "StoreId": "00300123",
    "InvoiceOrderNo": "00300123100189999",
    "Invoice": {
        "Head": "齐獭信息科技有限公司",
        "HeadType": 2,
        "InvoiceType": 1,
        "ContactMobile": "13511226467",
        "ContactEmail": "a1@qita.cn",
        "TaxNo": "91310115MA1H9P4076",
        "BankName": null,
        "BankAccount": null,
        "Phone": null,
        "Address": null
    },
    "InvoiceOrder": {
        "SalesType": "S",
        "TradeOrderNo": "00300123100189999",
        "OrginalInvoiceOrderNo": "",
        "OrderDate": "2024-08-26",
        "OrginalAmount": 1000.0,
        "AfterAmount": 1000.0,
        "InvoiceAmount": 1000.0,
        "PresaleFlag": 1
    },
    "InvoiceOrderItems": [
        {
            "LineNo": 1,
            "GoodsCode": "10000A",
            "StoreId": "00300123",
            "Unit": "",
            "OrginalPrice": 1000.0,
            "SaleQty": 1,
            "GiftFlag": 0,
            "OrginalAmount": 1000.0,
            "AfterAmount": 1000.0
        }
    ]
}
2.52.3 返回结果说明
字段描述字段名称类型备注
处理结果ErrorCodestring空:成功;0:成功;其余:失败
成功标记IsSuccessstring成功为true,否则false
返回消息Messagestring错误消息文本。仅错误时有返回内容。
2.52.4 返回结果示例
{
    "ErrorCode": "0",
    "IsSuccess": "true",
    "Message": "开票申请成功!"
}

2.53 数电发票-发票红冲

接口地址: /invoice/reversal
接口说明: 外部系统调用本接口红冲数电发票。
接口名称: ReversalInvoice
请求方式: HTTP POST 提交

2.53.1 参数说明
字段名称字段描述类型长度必填备注
品牌编码OwnerIdString4Y
店铺编码StoreIdString10Y
开票申请号InvoiceOrderNoString28Y唯一对应一次开票,因退货导致多次开票时开票申请号需要重新发号。可以基于销售订单号+ 序号作为开票申请号,例如销售订单号 A:首次购买:A01,部分退后剩余商品:A02(收到该订单将会红冲掉A01 对应的开票).如全退,A02 中剩余商品为空,金额为 0。
2.53.2 参数示例
{
    "OwnerId": "10",
    "StoreId": "00300123",
    "InvoiceOrderNo": "00300123100189999"
}
2.53.3 返回结果说明
字段描述字段名称类型备注
处理结果ErrorCodestring空:成功;0:成功;其余:失败
成功标记IsSuccessstring成功为true,否则false
返回消息Messagestring错误消息文本。仅错误时有返回内容。
2.53.4 返回结果示例
{
    "ErrorCode": "0",
    "IsSuccess": "true",
    "Message": "红冲申请成功!"
}

Reviews